我可能遗漏了一些明显的东西,并且已经通过多种方式解决了这个问题,但似乎无法让它发挥作用;
我有一个
@Html.HiddenFor(m => m.AddEdit.IsStartValue, new { id = "IsStartValueHidden" })
我的模型中的 bool 值。
在我的页面脚本中我有这个
var start = new Boolean();
start = $('#IsStartValueHidden').val();
console.log(start);
if (start == true) {
console.log("if start true");
$('#StartValue').attr("disabled", "disabled");
}
else {
console.log("If start false");
}
第一个 console.log 写入了 true 值,但是它没有命中 if() 语句,而是转到 else 并写入 false!
我用多种方式编写它,例如 if($('#IsStartValueHidden').val() == true..
但是无论如何我已经做到了,它总是将值记录为 true,但似乎在 if 部分中将其视为 false,并跳到 else。
真的很困惑如何做到这一点!
我也尝试过使用 If(.. === true) )
最佳答案
不确定,但我认为这会起作用(因为我认为您的 $('#IsStartValueHidden').val()
返回字符串值):
var start = $('#IsStartValueHidden').val() == "true";
console.log(start);
if (start == true) {
console.log("if start true");
$('#StartValue').attr("disabled", "disabled");
}
else {
console.log("If start false");
}
关于Jquery bool 值在 if() 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42597142/