【发布时间】:2019-07-29 13:39:50
【问题描述】:
我有这个 html:
$(function() {
$('.link-check').on("click", function(e){
$(this).find("input").click();
})
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a class="link-check">
<label>
<input type="checkbox"> Check
</label>
</a>
当我点击一个链接或直接点击一个输入时,它会不断地在控制台中打印Maximum call stack size exceeded 并且页面被阻止。
如果我在控制台中执行$('.link-check') 和$('.link-check').find("input"),在这两种情况下它都只返回一个元素。
为什么会出现这个错误?
【问题讨论】:
-
您的 HTML 无效。
a、button、label等交互元素不能有交互内容。 -
@HereticMonkey 类似于那个副本,但更糟。
标签: javascript jquery