4

いいえを提供したときに本の属性を受け入れる動的テーブルを作成したいと思います。前のページに入力する本の数。しかし、私は何も得ていません。

これは私のコードです:

<table>
<c:forEach begin="1" end= "${ no }" step="1" varStatus="loopCounter">
<tr>
<td>
<input type='text' name="isbn" placeholder="ISBN">
</td>
<td>
<input type="text" name="Title" placeholder="Title">
</td>
<td>
<input type="text" name="Authors" placeholder="Author">
</td>
<td>
<input type="text" name="Version" placeholder="Version">
</td>
</tr>
</c:forEach>
</table>

${no} は入力したい本の数です。私はここでは新人です。タイトルがわかりにくかったらすいません。助けてください。

4

3 に答える 3

5

本のリストを反復していないため、何も得られません。<input type="text" />また、反復ごとにたくさん印刷しているだけです。コードは次のようになります (本のリストがlstBooksあり、既に初期化されていると仮定します):

<table>
    <!-- here should go some titles... -->
    <tr>
        <th>ISBN</th>
        <th>Title</th>
        <th>Authors</th>
        <th>Version</th>
    </tr>
    <c:forEach begin="1" end= "${ no }" step="1" varStatus="loopCounter"
        value="${lstBooks}" var="book">
    <tr>
        <td>
            <c:out value="${book.isbn}" />
        </td>
        <td>
            <c:out value="${book.title}" />
        </td>
        <td>
            <c:out value="${book.authors}" />
        </td>
        <td>
            <c:out value="${book.version}" />
        </td>
    </tr>
    </c:forEach>
</table>

コメントに基づいて問題を理解したら、${no}変数が で利用可能であることを確認してくださいrequest.getAttribute("no")。これは、スクリプトレットを使用してテストできます (ただし、これは悪い考えです) <c:out value="${no}" />

私が言ったように、変数は からアクセスできる必要があることに注意してください。request.getAttributeと混同しないでくださいrequest.getParameter

ちなみに、次のような値になる可能性があることがわかっている場合は、変数を設定できます。

<c:set var="no" value="10" />

そして、 を使用してアクセスできます${no}

詳細: JSTL コア タグ

于 2013-02-09T05:46:59.750 に答える