jQuery Click正在执行多次

时间:2015-01-16 01:19:45

标签: jquery events click

请考虑以下代码。

$(function(){

    $(".notes").click(function(){
        console.log('hi');          
    })
})

    <a data-shipmentid="1" href="#" class="notes btn btn-primary btn-xs">Notes</a>
    <a data-shipmentid="1" href="#" class="notes btn btn-primary btn-xs">Notes</a>
    <a data-shipmentid="1" href="#" class="notes btn btn-primary btn-xs">Notes</a>
    <a data-shipmentid="1" href="#" class="notes btn btn-primary btn-xs">Notes</a>
    <a data-shipmentid="1" href="#" class="notes btn btn-primary btn-xs">Notes</a>

目的是在单击任何超链接时记录消息。我面临的问题是,如果我点击超链接,那么控制台会收到消息“hi”5次(带有“notes”类的超链接总数)

我明白有些事情是错的。在这种情况下,我如何检查这里有什么问题?我看到控制台没有显示任何错误消息。任何人都知道为什么事件多次开火?

2 个答案:

答案 0 :(得分:1)

Shanimal提供的答案有效!

$(function(){
 $(".notes").off().click(function(){
    console.log('hi');          
   })
})

答案 1 :(得分:0)

如何使用.one()

$(function(){

    $(".notes").one('click', function(){
        console.log('hi');          
    })
})