$('#btn2').toggle(
function () {
$('#btn2').text('show');
},
function () {
$('#btn2').text('hide');
}
)
这不适用于我的电脑(在任何浏览器上)。这可能是由于jQuery版本之间的方法发生了变化吗?
答案 0 :(得分:1)
根据您更新的功能请求,只需在两个内部文本值之间切换:
$('#btn2').click(function() {
$(this).text( $(this).text()=='show'? 'hide':'show' );
});
<小时/> 这不是
toggle
的签名之一。要使用其隐藏/显示功能,请执行此操作$(elem).toggle()
(显然,如果按钮被隐藏,则无法显示'show',因此可能是您正在切换其他内容):
$(elem).toggle();
$('#btn2').text( $(elem).is(':visible') ? 'hide' : 'show' );
答案 1 :(得分:1)
请参阅fiddle
This functionality of .toggle
was removed in jQuery 1.9
这是jQuery 1.9或更高版本的wont work ..
请参阅另一个here
答案 2 :(得分:1)
试试这个:http://jsfiddle.net/W9JCR/
$('#btn2').click(function () {
($(this).text()=='show') ? $(this).text('hide') : $(this).text('show');
});
答案 3 :(得分:0)
是的,它仍然受到支持。我认为您的代码存在的问题是您使用了text()
。使用val()
$('#btn2').toggle(function () {
$('#btn2').val('show');
},function () {
$('#btn2').val('hide');
});