我有这个html,如果它在加载时在页面中有效:
<input type="checkbox" name="originBusDock" value="Y" />
<label for="originBusDock" onclick="document.booking.originBusDock.checked=(!document.booking.originBusDock.checked);">Loading Dock</label>
如果我点击标签,它旁边的复选框就会检查,如果我再次点击它,它就会取消选中。
我的问题是如果我使用相同的代码用来自AJAX调用的响应数据填充空div,则onclick事件不起作用。 看来我必须“重新绑定到DOM”?从我能找到的,但如何做到这一点? 复选框的数量是可变的,它们都有不同的名称。页面中还有其他复选框,原始页面加载我不想影响。 我已经看到了这个:onclick event on Ajax output但是它使用了一个固定的ID,而且我不会事先知道ID名称将是什么,因为它是在AJAX调用上动态生成的。 希望有道理。 TIA
答案 0 :(得分:1)
标签会根据id
属性而不是name
附加到其他元素,因此如果您确保输入的id
如下:
<input type="checkbox" id="originBusDock" name="originBusDock" value="Y" />
<label for="originBusDock">Loading Dock</label>
...那么您根本不需要onclick
事件 - 点击标签会自动切换相关的复选框。