最近,jQuery删除了.toggle()
,我不知道如何在按钮内切换文本。是的,我已经在这个论坛上寻找答案,但没有一个是足够的。
这是我的代码:
$("#show").click(function () {
if($(this).text() == "Show") {
$(this).text() == "Hide";
alert("Fill fields");
} else {
$(this).text() == "Show";
alert("Clear fields");
}
});
说明:
答案 0 :(得分:3)
.text()
的设定者是这样的:
$(selector).text('text here') // this is setter
而不是
$(selector).text() == 'text here'; // this is comparison
如此完整的代码:
$("#show").click(function () {
if($(this).text() == "Show") {
$(this).text("Hide");
alert("Fill fields");
} else {
$(this).text("Show");
alert("Clear fields");
}
});
如果您愿意,可以使用三元运算符缩短它:
$('#show').click(function(){
$(this).text(function(_, text) { return text == 'Show' ? 'Hide' : 'Show'; });
});
答案 1 :(得分:0)
您很可能正在寻找切换事件替代方案;你可以将n个函数传递给它,它们会在你点击时连续被触发。
检查jquery-toggleclick.js。 toggleClick jQuery插件就是这么做的。
<强>用法强>:
$("#show").toggleClick(fillFields, clearFields);
然后您可以在相应的功能中设置文本
答案 2 :(得分:-3)
我检查了jquery文档。切换仍在那里。 http://api.jquery.com/toggle/