鉴于代码:
<html>
<head>
<script src="jquery-2.1.0.min.js"></script>
Something...
</head>
<button id='flip' type='button'>Flip</button>
<script>
$('#flip').bind('click', function() {
var x = document.getElementById("flip").name;
if (x == 'Flip')
{
$(this).text('Flop');
}
else
{
$(this).text('Flip');
}
});
</script>
</body>
</html>
我每次点击都会尝试更改按钮,但它不起作用。
知道怎么解决吗?
非常感谢
答案 0 :(得分:2)
name
上没有<button>
属性,因此您始终会获得空值。不需要document.getElementById
,因为按钮位于this
中。只需拨打不带参数的text()
即可获得当前值:
var x = $(this).text();
以下是JsFiddler中的演示。
答案 1 :(得分:1)
我会做这样的事情:
<强> HTML:强>
<button id="flipflop">flip</button>
<强>的javascript:强>
var flip = true;
$("#flipflop").click(function(){
if(flip)
$("#flipflop").text("flop");
else
$("#flipflop").text("flip");
flip = !flip;
})
编辑:如果你想要真正精明,我会使用以下一行:
var flip = ($("#flipflop").text() === "flip");
自动确定你需要翻转哪种方式(或者是翻牌?)。