我正在使用JavaScript来即时生成一些HTML表格。在填写完这个动态表之后,我使用jQuery来“抓取”一些输入,并为表单验证做一些小计算。不过,我的jQuery选择器不支持动态HTML表单。任何人都可以给我一些建议吗?谢谢!jQuery选择JavaScript生成的元素
下面是代码:
<script>
//generate HTML table
$('<tr><th><label for="id_CAM_1">Input:</label></th><td><select name="CAM_1_'+i+'" id="id_1_'+i+'"><option value="1">Option 1</option><option value="2">Option 2</option></select></td></tr>').appendTo('.table');
// jQuery selector, which does not work dynamically
$('select[name=CAM_1_'+i+']').change(function() {
var ss1=$(this).val()
alert(ss1)})
</script>
通过将选择器传递给['on'](http://api.jquery.com/on)方法来使用事件委托。它比试图管理绑定和重新绑定事件更有弹性。 – zzzzBov
你的代码是否真的缺少'})'?否则它应该工作http://jsfiddle.net/mowglisanu/JKRGs/ – Musa
我几乎每天都会看到2-3个问题。 [很多](http://stackoverflow.com/search?q=dynamically+created+elements),我甚至不能回答。 :( –