首页 > 解决方案 > [0].click() 触发一次, .click() 触发三次

问题描述

$('#idElelemnt')[0].click() --> fires once

$('#idElelemnt').click() --> firing three times.

没有On.('click')绑定,我们正在使用 input onclick 属性。

手动点击也会触发一次。

html

<div class="radio radio-success radio-inline ">
    <input type="radio" id="uniqueId" onclick="yesOrNoCheck()" value="someValue">
    <label for="uniqueId">
        text
    </label>
</div>

有什么线索吗?

标签: jqueryasp.net-mvc

解决方案


您应该通过 jQuery 本身附加单击事件(执行此操作的正确方法),而不是像 onclick:

<div class="radio radio-success radio-inline ">
<input type="radio" id="uniqueId" value="someValue">
<label for="uniqueId">
    text
</label>
</div>


<script>
$('#uniqueId').on("click", function(){yesOrNoCheck();})
// programmatic click on element should fire only once:
$('#uniqueId').click();
</script>

推荐阅读