我需要一些帮助。
我有一个由displaytag创建的表格:
<div id="contentAccionFormativa" class="displayAF">
<display:table id="displayAF" name="${accionesFormativasList}"
htmlId="justifAfList"
class="displayTagTable"
uid="accionFormativa">
<display:column titleKey="asociarJustificante.display.af.header.checkbox"
class="tdBorderFirst center"
headerClass="firstTh"
style="width: 2px;" >
<form:checkbox id="checkAf" path="listaIdAccionesFormativas" value="${accionFormativa.idAfExteInteIdConv}"/>
</display:column>
<display:column titleKey="asociarJustificante.display.af.header.descripcion" class="lastTh center" >
${accionFormativa.codAF}
</display:column>
<display:footer>
<tr><td colspan="2" class="firstTh lastTh right"></td></tr>
</display:footer>
</display:table>
</div>
我尝试使用计数复选框:
jQ('#justifAfList :checkbox').click(function() {
alert(jQ("input:checked").length);
});
它工作正常,但是当我用ajax生成表时:
jQ.each(data.ajaxResult.accionesFormativas, function(i,value){
firstTd = "<td class='tdBorderFirst center' style='width: 2px;'><input id='checkAf' type='checkbox' value=" +value.idAfExteInteIdConv+ " name='listaIdAccionesFormativas'><input type='hidden' value='on' name='_listaIdAccionesFormativas'></td>";
jQ('#justifAfList > tbody:last').append("<tr class='odd'>" + firstTd + "<td class='lastTh center'>" + value.codAF +"</td></tr>");
});
jquery函数仅捕获第一个复选框上的单击。
有人可以帮助我。
答案 0 :(得分:1)
尝试将事件委托给现有对象:
jQ('#justifAfList').on('click','input:checked',function() {
alert(jQ("input:checked").length);
});
或者,如果您使用的版本低于1.7,请使用“live”。