我有一个使用PHP打印的按钮表。每个按钮在其数据属性中都有不同的值,但是都是一样的。我想要一个特定按钮的数据属性的数据属性的值。这是行不通的:当所有按钮具有相同的ID时,获取按钮数据属性的值
$(this).find('button').data('myatt')
上面返回的是第一个按钮的数据属性值,而不是用户点击的那个。
编辑:的jsfiddle来说明:http://jsfiddle.net/7fkfu/17/
任何想法?谢谢 :)。
我有一个使用PHP打印的按钮表。每个按钮在其数据属性中都有不同的值,但是都是一样的。我想要一个特定按钮的数据属性的数据属性的值。这是行不通的:当所有按钮具有相同的ID时,获取按钮数据属性的值
$(this).find('button').data('myatt')
上面返回的是第一个按钮的数据属性值,而不是用户点击的那个。
编辑:的jsfiddle来说明:http://jsfiddle.net/7fkfu/17/
任何想法?谢谢 :)。
好的,问题在于你如何试图使用.on
方法:你试图说on().click()
,但你不希望这两个。 .on()
的第一个参数是一个字符串,指示您要处理的事件。然后是一个选择器,一个可选的数据参数,然后放置实际的处理器。 (还有一个事件地图格式 - 请参阅.on() doco。)同样在小提琴中,它正在检查按钮[rel=modal]
,但在HTML中它是rel=test
。请尝试以下操作:
$(function() {
$('#mytable').on('click','tr button[rel=test]',function() {
alert($(this).data('mydata'));
});
});
更新的提琴的作品:http://jsfiddle.net/7fkfu/19/
另外,不要用相同的ID创建多个元素。 (在这种情况下,不影响你的代码,但实际上它是无效的HTML,如果你真的尝试通过ID选择元素,这将很重要。)
非常感谢,非常感谢:D。 – ale
这是否工作:
$("#yourButtonId").click(function() { alert($(this).val()); //or something else that you want });
希望它可以帮助
对不起..不能解决它,但谢谢。请参阅http://jsfiddle.net/7fkfu/17/comments可能只能编辑5分钟(点击此框解雇) – ale
Richard的答案应该为你做。如果不是,请指出您尝试检索数据属性的上下文。代码中显示的(非工作)代码行在哪里适合您的代码?显示一些(生成的)HTML也无妨。 (并且在页面上没有超过一个元素具有相同的ID。) – nnnnnn
我已经创建了一个jsfiddle:jsfiddle.net/7fkfu/17希望能够帮助解释它。 – ale