Jquery boolean 在 if() 中不起作用

JQu*_*ery 3 jquery

我可能遗漏了一些明显的东西,并且在很多方面都实现了这一点,但似乎无法让它发挥作用;

我有一个

@Html.HiddenFor(m => m.AddEdit.IsStartValue, new { id = "IsStartValueHidden" })

对于我的模型中的布尔值。

在页面上的脚本中,我有这个

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");
                    }
Run Code Online (Sandbox Code Playgroud)

第一个 console.log 写入一个真值,但是它没有命中 if() 语句而是转到 else 并写入 false!

我写了很多方法,比如 if($('#IsStartValueHidden').val() == true..

但是无论如何我已经做到了,它总是将值记录为true,但似乎在if部分将其视为false并跳到else。

真的很困惑如何做到这一点!

我也试过使用 If(.. === true) )

pou*_*yan 5

不确定,但我认为这会起作用(因为我认为您的$('#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");
                }
Run Code Online (Sandbox Code Playgroud)