0

3 つのラベルと 3 つのコントロールを続けて追加しようとしています。

コード

<html>
 <body>
    <table class="shadedTable4" width="100%" border="0" cellspacing="0" cellpadding="0" style="border-collapse:collapse;">
<tr border="1">
<td>
<input type =checkbox name="ChildCheck" id="ChildCheck" value="1"/>&nbsp;&nbsp;<b>Apply  to all fields</b>&nbsp;&nbsp;</td>
<td><input class="FullTextArea" id="applyfieldscontrol" name="applyfieldscontrol" style="overflow-x:hidden;height:44px;" value="" rows="5" cols="10" >                    
</input>
</td>
</tr>
            <tr>
                <% 
                dim CountFlg
                CountFlg = 0
                for i=0 to XmlNodes.length-1
                    if CountFlg <= 2 then %>
                        <td class="style3" >
                            <span class="style4">
                                <b><%=XmlNodes.item(i).getAttribute("Name")%></b>
                            </span>&nbsp;
                        </td>
                        <TD>
                            <input class="FullTextArea" name="<% i % >" id="<% i %>" style="height:35px;overflow:auto;padding-left:80px;" rows="5"cols="10"> </input>
                        </TD>
                        <% CountFlg=CountFlg+1
                    end if
                next%>
            </tr>       
     </table>
    </body>
 </html>

ここで、XmlNodes には 3 つ以上の xml ノードがあります。

だから私がしなければならないことは、3つを続けて表示し、3つ後、次の行にはさらに3つのラベル+コントロール(TextArea)などがあります。

これを実装するためのより良いロジックはありますか?

いくつかの答えを教えてください。

4

1 に答える 1

1

あなたのコードでは、「if CountFlg <= 2 then」というステートメントが原因で、3 番目のノード以降は表示されません。次のコードは、3 番目のノードごとに新しいテーブル行を作成します。「i」が 3 の倍数かどうかを確認するだけで機能します。

<html>
    <body>
        <table>
            <tr>
                <% For i = 0 To XmlNodes.Length - 1 
                    if (i / 3) = Int(i / 3) Then %> 
            </tr>
            <tr>
                    <% End If %>
                <td class="style3" >
                    <span class="style4">
                        <b><%= XmlNodes.item(i).getAttribute("Name") %></b>
                    </span>&nbsp;
                </td>
                <td>
                    <input class="FullTextArea" style="height:35px;overflow:auto;padding-left:80px;" rows="5"cols="10" />
                </td>
                <% Next %>
            </tr>
        </table>
    </body>
</html>

注意。また、例から TABLE タグが欠落しており、他の誰かが言及したように、BODY タグの前に HTML を閉じました。

于 2012-09-21T04:49:34.710 に答える