我正在尝试根据通过 ajax 加载的隐藏字段的值为一个 div 分配一个 CSS 类。
我的代码在调用时为隐藏字段返回正确的值,但无论结果如何,我的 div 总是分配相同的 css 类。
我猜我的 IF 语句语法有问题:
function doneLoading(){
var colorStatus = $('#colorStatus').val();
if(colorStatus = 'RED'){
$('.circleFrame').addClass('redState');
}
else if(colorStatus = 'GREEN'){
$('.circleFrame').addClass('greenState');
}
else if(colorStatus = 'YELLOW'){
$('.circleFrame').addClass('yellowState');
}
else {
alert("Something is broken");
}
}
最佳答案
这是因为你在做 =
赋值而不是 ==
比较。您可能想使用 http://jshint.com以帮助定位这些错误。
考虑以下替代方案来缩短您的代码。
function doneLoading() {
var color = $('#colorStatus').val().toLowerCase();
$('.circleFrame').addClass(color + 'State');
}
要维护验证,您可以这样做:
var colors = {green:1, red:1, yellow:1};
function doneLoading() {
var color = $('#colorStatus').val().toLowerCase();
if (colors.hasOwnProperty(color))
$('.circleFrame').addClass(color + 'State');
else
alert("Something is broken");
}
关于javascript - 使用隐藏字段值编写 JQuery/Javascript IF/else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12682728/