我有一个复选框,其值为"new"或“现有”公司。
$("input[name=company]:checked").val()
使用 jQuery 显示选中框的值。
现在如果我这样做:
if ($("input[name=company]:checked").val() == "new") {
is_new_company = true;
} else {
is_new_company = false;
}
alert(is_new_company);
我得到了正确的 bool 值。
执行快捷方式:
($("input[name=company]:checked").val() == "new") ? is_new_company = true : is_new_company = false;
我什么也没得到..这是为什么?
最佳答案
你为什么不这样做:
is_new_company = $("input[name=company]:checked").val() == "new";
我在 Firebug 控制台上尝试了您的代码,它工作正常:(input[name=q]
是此页面右上角的搜索框)
var x;
$("input[name=q]").val() == "asd" ? x = "t r u e" : x = "f a l s e";
console.log(x);//worked as expected
顺便说一句,我认为以下内容更具可读性(当然,我只将其用于非 bool 值):
x = $("input[name=q]").val() == "asd" ? "t r u e" : "f a l s e";
关于javascript if - else 快捷方式不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3287596/