【问题标题】:jQuery find ID of clicked button by classjQuery按类查找单击按钮的ID
【发布时间】:2011-06-23 18:11:15
【问题描述】:

我的页面上有许多具有相同类名的按钮。然而,这些按钮有不同的 ID。我该怎么做:

$(".vote").click(function(){
     var id = $(this).{ID OF CLICKED BUTTON};
});

我怎样才能使这个伪代码工作?

谢谢

【问题讨论】:

  • 哇,几乎 6 个相同的答案 :)
  • 是的,但只有一个是对的。
  • “正确”还是“最佳”?当涉及到一组解决方案时,我不会使用诸如“错误”或“正确”之类的术语,尤其是当那些回答的人在他们的职业生涯中都处于不同的技能水平时。 :)

标签: jquery button


【解决方案1】:
$(".vote").click(function(){
     var id = this.id;
});

ID 可以直接从元素中访问。绝对没有必要使用 jQuery 方法。

【讨论】:

  • 我认为您的意思是“不需要”:-)(所以不允许我进行这么小的编辑。)
【解决方案2】:

使用 jQuery 对象(非必需)

$(".vote").click(function(){
  var id = $(this).attr('id');
});


没有 jQuery 对象(更快)

$(".vote").click(function(){
  var id = this.id;
});

【讨论】:

    【解决方案3】:

    我认为这也有效

     $("body").on("click",".vote",function(){
        var id = this.id;
     });
    

    【讨论】:

    • 请尽量避免仅仅将代码作为答案,并尝试解释它的作用和原因。对于没有相关编码经验的人来说,您的代码可能并不明显。
    【解决方案4】:

    这对我来说效果很好,

    $(".vote").click( (clicked) => {
         var id = clicked.target.id;
    });
    

    【讨论】:

      【解决方案5】:

      对于动态添加的按钮,您可以尝试以下方法。只有在加载页面时按钮存在时,上述给定方法才有效

      $(document).on('click','.vote',function(){
          var id=$(this).attr('id');
      });
      

      【讨论】:

        【解决方案6】:

        使用这个:

        var id = $(this).attr('id');
        

        【讨论】:

        • 是的,我看到了。无论如何都要使用 jQuery 作为事件处理程序,但请不要使用它只是为了在处理程序中获取 this.id
        【解决方案7】:

        使用此代码

        $(document).on('click','.vote',(event)=>{
             var id = $(event.target).attr('id');
        })
        

        我确信您在任何情况下都不会遇到此解决方案的任何问题。

        【讨论】:

          【解决方案8】:

          你可以使用

          var id = $(this).attr('id');
          

          【讨论】:

          • -1 代表$(this).attr('id') 而不仅仅是this.id
          【解决方案9】:

          使用属性:

          var id = $(this).attr('id');
          

          .attr 允许您通过名称获取 html 标签属性。

          【讨论】:

            猜你喜欢
            • 2012-01-22
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-01-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多