New*_*bie 4 c# asp.net-mvc jquery
alert(x)是假的.但由于某种原因,它不会进入if语句?有任何想法吗?
HTML
@{bool x = false;
foreach (var c in Model.Cleaner.TimeConfirmations.Where(l => l.date.ToShortDateString() == DateTime.Now.ToShortDateString() || l.date.ToShortDateString() == DateTime.Now.AddDays(1).ToShortDateString()))
{
x = true;
}
<span class="ifAvailable" data-confirmationchecker="@x" value="15">@x</span>
}
Run Code Online (Sandbox Code Playgroud)
jQuery的
var x = $(".ifAvailable").data('confirmationchecker')
alert(x);
if ( x == false) {
alert("hi")
}
Run Code Online (Sandbox Code Playgroud)
数据属性只能包含字符串:
data-*属性由两部分组成:
- 属性名称不应包含任何大写字母,并且必须至少在前缀"data-"之后一个字符.
- 属性值可以是任何字符串
所以你要将字符串"false"与布尔值 false进行比较,它们不相同.
代替
if (x == false)
Run Code Online (Sandbox Code Playgroud)
使用
if (x == "false")
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用此技术:
var x = ($(".ifAvailable").data('confirmationchecker') == "true");
alert(x);
if ( x == false) {
alert("hi")
}
Run Code Online (Sandbox Code Playgroud)