一个简单的例子,当按钮被jQuery按下时,我尝试检索按钮的值属性,下面是我得到的结果:
<script type="text/javascript">
$(document).ready(function() {
$('.my_button').click(function() {
alert($(this).val());
});
});
</script>
<button class="my_button" name="buttonName" value="buttonValue">
Button Label</button>
在火狐中,我的提醒显示的是'buttonValue‘,这很棒,但在IE7中,它显示的是’按钮标签‘。
我应该使用什么jQuery来始终获取按钮的值?或者我应该使用一种不同的方法?
非常感谢。
答:我现在正在使用
<input class="my_button" type="image" src="whatever.png" value="buttonValue" />
发布于 2009-01-28 10:12:35
由于按钮值是一个属性,因此需要在jquery中使用.attr()方法。这应该就行了
<script type="text/javascript">
$(document).ready(function() {
$('.my_button').click(function() {
alert($(this).attr("value"));
});
});
</script>
你也可以使用attr来设置属性,更多信息in the docs。
这只适用于JQuery 1.6+。请参阅后现代对旧版本的回答。
发布于 2012-01-07 03:15:18
按钮没有value属性。要获取按钮的文本,请尝试:
$('.my_button').click(function() {
alert($(this).html());
});
发布于 2010-12-02 18:50:49
您还可以使用新的HTML5自定义数据属性。
<script type="text/javascript">
$(document).ready(function() {
$('.my_button').click(function() {
alert($(this).attr('data-value'));
});
});
</script>
<button class="my_button" name="buttonName" data-value="buttonValue">Button Label</button>
https://stackoverflow.com/questions/487056
复制相似问题