Javascript CSS不适用于动态添加到行中的控件
我有一个表,在这个表中,我使用javascript动态添加带有控件的行 我的问题是这些控件链接到CSS链接类Javascript CSS不适用于动态添加到行中的控件,javascript,jquery,html,css,asp-classic,Javascript,Jquery,Html,Css,Asp Classic,我有一个表,在这个表中,我使用javascript动态添加带有控件的行 我的问题是这些控件链接到CSS链接类 <div id="DataTable"> <INPUT type="button" value="Add Row" onclick="addNewRow('dataTable')" /> <INPUT type="button" value="Delete Row" onclick="deleteSelectRow('dataTable')
<div id="DataTable">
<INPUT type="button" value="Add Row" onclick="addNewRow('dataTable')" />
<INPUT type="button" value="Delete Row" onclick="deleteSelectRow('dataTable')" />
<TABLE id="dataTable" width="350px" border="1">
<TR>
<TD></TD>
<TD>Name</TD>
<TD>Country</TD>
<TD>Security</TD>
</TR>
<TR>
<TD><INPUT type="checkbox" name="chk"/></TD>
<TD><INPUT type="text" name="txt"/></TD>
<TD>
<SELECT name="country">
<OPTION value="in">Greece</OPTION>
<OPTION value="de">Germany</OPTION>
<OPTION value="fr">India</OPTION>
<OPTION value="us">United States</OPTION>
<OPTION value="ch">France</OPTION>
</SELECT>
</TD>
<td>
<Select name="secName2" class="chosen-select" data-placeholder="Select Security(s)">
<option value="000"></option>
<%sQuery = "Select sID,SecurityName from SecurityMast where Active = 1 order by SecurityName"
Set oRS = oConn.Execute (sQuery)
if Not (oRS.EOF and oRS.BOF) then%>
<%Do While Not oRS.EOF%>
<option value="<%Response.Write(oRS(0))%>"
<%if sID=oRS(0) then Response.write "Selected"%>> <%Response.Write(oRS(1))%></option>
<%oRS.MoveNext
Loop%>
<%end if
oRS.Close%>
</select>
</td>
</TR>
</TABLE>
</div>
名称
国家
安全
希腊
德国
印度
美国
法国
我的javascript看起来像这样
function addNewRow(tID) {
var table = document.getElementById(tID);
var roCount = table.rows.length;
var ro = table.insertRow(roCount);
var coCount = table.rows[1].cells.length;
for(var i=0; i<coCount; i++) {
var newcell = ro.insertCell(i);
newcell.innerHTML = table.rows[1].cells[i].innerHTML;
//alert(newcell.childNodes);
switch(newcell.childNodes[0].type) {
case "text":
newcell.childNodes[0].value = "";
break;
case "checkbox":
newcell.childNodes[0].checked = false;
break;
case "select-one":
newcell.childNodes[0].selectedIndex = 0;
break;
}
}
}
函数addNewRow(tID){
var table=document.getElementById(tID);
var roCount=table.rows.length;
var ro=表.插入行(roCount);
var coCount=table.rows[1].cells.length;
对于(var i=0;我猜您有一些绑定到Myselect对象的代码。它绑定到表启动时存在的对象,但不绑定到您动态添加的对象,因为它已经运行,所以它不知道这些对象。您必须手动将其绑定到新元素,或者切换代码以使用它们委托事件处理,使其能够自动处理动态创建的元素。由于您没有向我们显示该代码,我们无法对该代码提出进一步建议。如何手动绑定新元素?您必须向我们显示加载页面时连接到新元素的代码。我使用了打开的source已编辑了主要问题。请检查。
<script type="text/javascript" src="Scripts/chosen.jquery.js"></script>
<script type="text/javascript"> $(".chosen-select").chosen(); $(".chosen-select-deselect").chosen({allow_single_deselect:true}); </script>