我在jquery中尝试了if else语句,但它无效。我的代码就是这样。
jQuery(document).ready(function () {
jQuery(".checkboxes").hide();
//toggle the componenet with class msg_body
jQuery(".Select").click(function () {
jQuery(this).next(".checkboxes").slideToggle(500);
if ($(".select").text() == "+") {
alert('hi');
$(".select").html() == "-"
}
else {
$(".select").text() == "+";
}
return false;
});
});
任何帮助将不胜感激。
答案 0 :(得分:0)
我想这是一个错字。把点头事件中的大写“S”代替“s”。
尝试以下代码: -
if ($(".Select").text() == "+") {
alert('hi');
$(".Select").html("-");
}
else {
$(".Select").text() == "+";
}
或简单地使用$(this)如下: -
if ($(this).text().trim() == "+") {
$(this).html("-");
} else {
$(this).text("+");
}
答案 1 :(得分:0)
您无法为函数调用指定值。您的代码应该抛出类似Uncaught ReferenceError: Invalid left-hand side in assignment
jQuery(function ($) {
$(".checkboxes").hide();
//toggle the componenet with class msg_body
$(".Select").click(function () {
$(this).next(".checkboxes").slideToggle(500);
$(this).text(function (i, txt) {
return txt.trim() == '+' ? '-' : '+'
})
return false;
});
});
答案 2 :(得分:0)
看看这个小提琴:JsFiddle
您应该将代码更改为此代码,同时将其分配为$(".Select").html("-");
jQuery(document).ready(function () {
jQuery(".checkboxes").hide();
//toggle the componenet with class msg_body
jQuery(".Select").click(function () {
jQuery(this).next(".checkboxes").slideToggle(500);
if ($(".Select").text() == "+") {
alert('hi');
$(".Select").html("-");
}
else {
$(".Select").text("+");
}
return false;
});
});
答案 3 :(得分:0)
首先,您使用的是两个不同的类.Select
和.select
。我认为问题在于此。第二件事,它应该是html('-')
而不是html() == '-'
,因为它是一个逻辑/条件语句,它将返回一个布尔值。它不是一个赋值语句。所以你的代码应该是:
jQuery(document).ready(function () {
jQuery(".checkboxes").hide();
//toggle the componenet with class msg_body
jQuery(".select").click(function () {
jQuery(this).next(".checkboxes").slideToggle(500);
if ($(".select").text() == "+") {
alert('hi');
$(".select").html("-");
}
else {
$(".select").text("+");
}
return false;
});
});
我认为正确的课程为select
,因为您使用的课程超过Select
。