0

私はここで初めてです。ボタンをループして、ループするdivに配置できるようにする必要があるという問題に悩まされています。どうすればいいですか?これは私がこれまでに得たものです: //my loop

for (i = 0; i < MPreply.recommendation.Length; i++) {
   html += "<div class='rec'> ";
   html += "</br> <div id = 'from1' value =  > Depart From:" + " ";
   html += emz + " " + "(" + + ")" + "</div>";
   html += "<div id = 'date1' > Schedule:" + " " + flytDate;
   html += " , " + convertedString;
   html += "</div>" + "<div id = 'to1' >To:" + " " + emz2 + " " + "(" + "" + ")";
   html += "</div> </br> </br> </br> ";
   html += "<div id = 'RecNo'>" + " " + (i + 1) + " )" + " </br> </br> </div> ";
   html += "<div id = 'fare1'> $" + em + "  </div> ";
   html += " </div>  <br/> <br/>";
   div_rec.InnerHtml = html;
}

html:

<div id = 'modal' runat="server" >
        <div id="dialog" runat="server">

        </div>
        <input id="_menuitem" type="button" value="Click" runat="server" />
    </div>  

前もって感謝します。

4

2 に答える 2

1

少なくともいくつかの問題があります。

"<div id = 'fare1'>

同様のセクションは、同じ ID を持つ複数の要素を生成します。

div_rec.InnerHtml = html;

すべてが完了したときにdiv_rec が一だけ更新されるように、ループの外に移動する必要があります。

emz + " " + "(" + + ")" + "</div>";

(おそらく)に変更する必要があります

emz + " " + "(" + your_variable_here + ")" + "</div>";

(私が思うに) ループにボタンの作成を追加するには、他の要素と同じように、それを文字列としてつなぎ合わせる必要があります。関数ハンドラを接続するには、次のいずれかを行う必要があります。

a) DOM レベル 0 ハンドラを文字列として構築する、または

b) HTML が更新されるまで待ってから、新しく追加されたボタンを照会し、イベント ハンドラーをコードに追加します (btn.onclick = function(... または dom レベル 2 ハンドラー (addEventListener または attachEvent) を使用)

于 2012-06-07T03:05:28.893 に答える
0

ここで見られる問題は、ID フィールドにあります。

生成しているすべての Div に同じ ID 名を指定しました。

お気に入り、

<div id = 'from1'>
<div id = 'to1'>

ID は要素の一意の識別子です。常に一意である必要があります。

代わりにクラスを使用できます。

お気に入り、

<div class = 'from1'>
<div class = 'to1'>
于 2012-06-07T21:14:19.733 に答える