Javascript 处理单选按钮时如何正确表示真/假?
我正试着把我的头脑集中在这一点上,并试图提高我的Javascript能力。我正在使用ASP.NET核心MVC创建一个基本的web表单,我有Javascript,当选中单选按钮时,它将运行 剃刀Javascript 处理单选按钮时如何正确表示真/假?,javascript,asp.net-mvc,Javascript,Asp.net Mvc,我正试着把我的头脑集中在这一点上,并试图提高我的Javascript能力。我正在使用ASP.NET核心MVC创建一个基本的web表单,我有Javascript,当选中单选按钮时,它将运行 剃刀 对 不 Javascript <script> function phoneSetupSelect() { var formInput = document.getElementById("myForm"); var phoneSetupValue
对
不
Javascript
<script>
function phoneSetupSelect() {
var formInput = document.getElementById("myForm");
var phoneSetupValue = formInput.PhoneSetup.value;
//alert(phoneSetupValue);
console.log('phoneSetupValue = ' + phoneSetupValue);
if (phoneSetupValue == 'true') {
document.getElementById('hiddenDiv').classList.remove("hidden");
}
else {
document.getElementById('hiddenDiv').classList.add("hidden");
}
}
</script>
函数phoneSetupSelect(){
var formInput=document.getElementById(“myForm”);
var phoneSetupValue=formInput.PhoneSetup.value;
//警报(电话设置值);
log('phoneSetupValue='+phoneSetupValue);
如果(phoneSetupValue=='true'){
document.getElementById('hiddenDiv').classList.remove(“hidden”);
}
否则{
document.getElementById('hiddenDiv').classList.add(“hidden”);
}
}
除了脚本中显示的if
条件外,我还尝试了以下方法
if(phoneSetupValue==true)
和if(phoneSetupValue)
结果好坏参半。前者不起作用,尽管model属性的类型为bool
,而后者起作用,我理解这一点。在这种情况下,由于两个单选按钮都附加了相同的脚本,因此其中一个按钮上存在的值将触发true
条件
我让它工作,但我只是困惑,为什么,如果有办法,我可以使这更好,更少的“黑客”的感觉 您可以将值设置为1或0,如果条件为,则将其检查为
if(phoneSetupValue*1===1)
检查checked
属性if(phoneSetupValue.checked)
您将布尔值与带有浅等号的字符串进行比较,这不是一个好主意。true(类型布尔)='true'(类型字符串)将始终返回false。
<script>
function phoneSetupSelect() {
var formInput = document.getElementById("myForm");
var phoneSetupValue = formInput.PhoneSetup.value;
//alert(phoneSetupValue);
console.log('phoneSetupValue = ' + phoneSetupValue);
if (phoneSetupValue == 'true') {
document.getElementById('hiddenDiv').classList.remove("hidden");
}
else {
document.getElementById('hiddenDiv').classList.add("hidden");
}
}
</script>