jQuery的事件没有理由触发两次(Jquery event triggering twice fo

2019-10-20 07:19发布

我有一个简单的形式,在那里我试图触发一个Ajax请求,当有人类型的东西有问题。 调试后,我留下了警报,当事件被触发,但它显示了两次,而不管浏览器。 (忽略输入标签的“相对”属性,这是别的东西,除非你认为它的rel属性导致了问题)。

<form class="formBig" name="formRegister" id="formRegister" method="post" action="">
    <label class="label" id="locationLabel" for="location">Location</label>
    <input class="input" name="location" id="location" type="text" rel="locationLabel" value="" />
</form>

<script type="text/javascript">
$("#location").click(function() {
    alert($(this).attr('id'));
});
</script>

Answer 1:

你要绑定一个click事件处理到一个文本输入框意味着它将当您单击当您输入被调用,而不是。 尝试使用KEYUP事件。



Answer 2:

最后我想出来的,那是因为(一些未知的对我,原因),我包括了jQuery放入后的形式。

但是,如果我在的document.ready内包含它,它工作得很好。 我认为这已经是与DOM。 我不知道,我还是相当n00bish当涉及到jQuery的。

并准备从通过脚本头标签中调用该文件包括。



Answer 3:

基本上,它触发两次,因为存在与该事件相关联的标签,其将导致triggerd事件两次一个在输入和其他相关联的标签上。



文章来源: Jquery event triggering twice for no reason