【发布时间】:2020-05-22 18:45:38
【问题描述】:
<form>
<fieldset disabled='disabled'>
<input type='text' name='text' value='not to be edited' />
<a href='#' class='editbutton'>click me</a>
</fieldset>
</form>
jQuery 不工作:
$("body").on("click", ".editbutton", function(e) {
e.preventDefault();
console.log("hello");
});
jQuery 工作:
$(".editbutton").on("click", function(e) {
e.preventDefault();
console.log("hello");
});
所以,当你以 $("body") 为起点时,jQuery 不会捕捉到点击编辑按钮的事件,因为 fieldset 被禁用。
如果你以 $(".editbutton") 作为起点,jQuery 可以工作,尽管 fieldset 仍然被禁用。
这是预期的行为吗?是否有解决方法?我无法使用有效的解决方案,因为表单是动态创建的。
【问题讨论】:
-
请在您的问题中创建一个小提琴,我们可以重现您的问题。您发布的代码完全有效。
标签: jquery click dynamically-generated fieldset