多次触发Jquery事件

多次触发Jquery事件,jquery,Jquery,多次触发单击事件。我有三个div,它们都有相同的类,但id不同。当我点击第一个分区的第一个“a”链接时,它将触发事件三次;当我点击第二个分区的第一个“a”链接时,它将触发事件两次;当我点击最后一个分区的第一个“a”链接时,它将触发事件一次 这是我的html代码: 尝试使用以下代码在单击第一个链接时触发事件: function gettingClick() { $("#a_1").on("click",function(){ var btnId = this.id; var str = btnId

多次触发单击事件。我有三个div,它们都有相同的类,但id不同。当我点击第一个分区的第一个“a”链接时,它将触发事件三次;当我点击第二个分区的第一个“a”链接时,它将触发事件两次;当我点击最后一个分区的第一个“a”链接时,它将触发事件一次

这是我的html代码:


尝试使用以下代码在单击第一个链接时触发事件:

function gettingClick() {
$("#a_1").on("click",function(){
var btnId = this.id;
var str = btnId.split("_");
if(btnId == "a_"+strt[1]){
    callMethod();
}
});}

您需要在选择器部分使用“#”来触发第一个链接上的click事件。

请检查下面的js fiddle链接,仅检查其调用一次

这里解决的问题是如何避免克服触发问题

谢谢你的帮助和支持


您的3个主div具有相同的id。请尝试更改它们。您正在调用fun gettingClick()?如果可能,您可以创建JSFIDLE或类似的东西吗?Atula:它是错误编写的,没有主Div的id。所有Div都是动态创建的,所以id事先不知道。我们事先知道的是关于类和“ux”之前id的一部分。如果您不知道元素的id,您将无法在该元素上触发单击事件。如果您是动态创建div,那么在生成div时还要为其分配适当的id。您还可以使用以下函数在div中搜索第一个或第二个锚定标记:
$(this).parents('.b3_inside')。find('a:first')
<div class="b3">
<div class="btn-group">
    <div class = "b3_inside">
        <a class="product_a" id="a_11" href="#0">
            <img src="a1.png">
                <span>
                    A1
                </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_21" href="#0">
            <img src="a2.png">
                <span>
                    A2
                </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_31" href="#0">
            <img src="a3.png">
            <span>
                A3
            </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_41" href="#0">
            <img src="a4.png">
            <span>
                A4
            </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_51" href="#0">
            <img src="a5.png">
            <span>
                A5
            </span>
        </a>
    </div>
</div>
<div class="b3">
<div class="btn-group">
    <div class = "b3_inside">
        <a class="product_a" id="a_12" href="#0">
            <img src="a1.png">
                <span>
                    A1
                </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_22" href="#0">
            <img src="a2.png">
                <span>
                    A2
                </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_32" href="#0">
            <img src="a3.png">
            <span>
                A3
            </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_42" href="#0">
            <img src="a4.png">
            <span>
                A4
            </span>
        </a>
    </div>
    <div class="b3_inside">
        <a class="product_a" id="a_52" href="#0">
            <img src="a5.png">
            <span>
                A5
            </span>
        </a>
    </div>
</div>
function gettingClick() {
$(".product_a").on("click",function(){
    var btnId = this.id;
    var str = btnId.split("_");
    if(btnId == "a_"+strt[1]){
        callMethod();
    }
});}
function gettingClick() {
$("#a_1").on("click",function(){
var btnId = this.id;
var str = btnId.split("_");
if(btnId == "a_"+strt[1]){
    callMethod();
}
});}
$(".product_a").on("click",function(){
    var btnId = this.id;
    var str = btnId.split("_");
     console.log(btnId);
    if(btnId == "a_"+str[1]){
        alert(btnId);
    }
});
$(document).off('click','.classname').on('click','.classname',function(e){/*code*/});