Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 获取按钮的值';所有按钮具有相同id时的数据属性_Jquery - Fatal编程技术网

Jquery 获取按钮的值';所有按钮具有相同id时的数据属性

Jquery 获取按钮的值';所有按钮具有相同id时的数据属性,jquery,Jquery,我有一个使用PHP打印的按钮表。每个按钮在其数据属性中具有不同的值,但执行相同的操作。我需要特定按钮的数据属性的数据属性值。这不起作用: $(this).find('button').data('myatt') 上面返回的是第一个按钮的数据属性值,而不是用户单击的值 编辑:jsfiddle以说明: 有什么想法吗?谢谢:)。这是否有效: $("#yourButtonId").click(function() { alert($(this).val()); //or something el

我有一个使用PHP打印的按钮表。每个按钮在其数据属性中具有不同的值,但执行相同的操作。我需要特定按钮的数据属性的数据属性值。这不起作用:

$(this).find('button').data('myatt')
上面返回的是第一个按钮的数据属性值,而不是用户单击的值

编辑:jsfiddle以说明:

有什么想法吗?谢谢:)。

这是否有效:

$("#yourButtonId").click(function() { alert($(this).val()); //or something else that you want }); $(“#yourButtonId”)。单击(函数(){ 警报($(this.val()); //或者其他你想要的东西 }); 希望有帮助

这是否有效:

$("#yourButtonId").click(function() { alert($(this).val()); //or something else that you want }); $(“#yourButtonId”)。单击(函数(){ 警报($(this.val()); //或者其他你想要的东西 });
希望它有帮助

如果您在按钮的单击事件中,那么这应该可以工作:

$(this).data('myatt');

请注意,同一页面上不应该有多个具有相同ID的元素

如果您在按钮的单击事件中,则此操作应有效:

$(this).data('myatt');

请注意,同一页面上不应该有多个具有相同ID的元素

好的,问题在于您试图如何使用
.on
方法:您试图在()上说
。单击()
,但您不想同时使用这两种方法。
.on()
的第一个参数是一个字符串,指示要处理的事件。然后是选择器、可选数据参数,最后是实际的处理程序。(还有一种事件映射格式-请参阅。)在小提琴中,它还使用
[rel=modal]
检查按钮,但在html中,它是
rel=test
。请尝试以下操作:

$(function() {
  $('#mytable').on('click','tr button[rel=test]',function() {
     alert($(this).data('mydata'));
  });
});
最新的小提琴作品:


另外,不要创建多个具有相同ID的元素(在这种情况下不会影响您的代码,但实际上它是无效的HTML,如果您确实尝试按ID选择元素,这将很重要。)

好的,问题在于您如何尝试使用
.on
方法:您试图说
on()。单击(),但你不能两者都要。
.on()
的第一个参数是一个字符串,指示要处理的事件。然后是选择器、可选数据参数,最后是实际的处理程序。(还有一种事件映射格式-请参阅。)在小提琴中,它还使用
[rel=modal]
检查按钮,但在html中,它是
rel=test
。请尝试以下操作:

$(function() {
  $('#mytable').on('click','tr button[rel=test]',function() {
     alert($(this).data('mydata'));
  });
});
最新的小提琴作品:


另外,不要创建多个具有相同ID的元素。(在这种情况下不会影响您的代码,但实际上它是无效的HTML,如果您确实尝试按ID选择元素,这将很重要。)

Richard的答案应该可以帮到您。如果没有,请指出您试图检索数据属性的上下文。您显示的(非工作)代码行在代码中的什么位置合适?也可以显示一点(生成的)HTML。(页面上不能有多个相同ID的元素)我已经创建了一个jsfiddle:jsfiddle.net/7fkfu/17,希望这能帮助解释这个问题。Richard的答案应该可以帮到你。如果没有,请指出您试图检索数据属性的上下文。您显示的(非工作)代码行在代码中的什么位置合适?也可以显示一点(生成的)HTML。(页面上只有一个元素具有相同的ID。)我创建了一个jsfiddle:jsfiddle.net/7fkfu/17,希望这能帮助解释它。谢谢你的帮助。。无法解决我的问题:(.请参阅感谢您的帮助..无法解决我的问题:(.请参阅抱歉..无法修复它,但感谢您。请参阅仅可编辑5分钟(单击此框退出)抱歉..无法修复它,但感谢。请参阅仅可编辑5分钟(单击此框退出)