2012-06-07 137 views
0

我在这里是新的,我被困在问题中,我必须循环我的按钮,这样我才能将它放在我的循环div上。我将如何做到这一点?这是我走到这一步: //我的循环循环内部的循环按钮Div

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> 

在此先感谢。

+0

您正在使用的WebForms或MVC?生成HTML的代码在哪里? – bluevector

回答

1

您至少有几个问题:

"<div id = 'fare1'> 

和类似的部分将产生具有相同ID的多个元素。

div_rec.InnerHtml = html; 

应外移至你的循环,使div_rec只更新一次,当一切都做。

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

应该(可能)改为

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

为了(我认为)添加在你的循环按钮的创作,你必须拼凑一起为一个字符串就像你的其他元素。为了得到一个函数处理程序有线了,你必须要么:

一)构建一个DOM 0级处理器作为一个字符串,或

b)等到你的HTML被更新,然后查询出新添加按钮和添加的事件处理程序代码(使用btn.onclick =函数(...或DOM 2级处理程序(或的addEventListener的attachEvent)

0

的问题,我在这里看到的是与ID字段。

你所提到的所有分部都有相同的ID名称。

Like,

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

ID是元素的唯一标识符。它必须始终是唯一的。

您可以改为使用Class。

一样,