2

我在模型中有一个 bool 属性:

public bool IsExistSchedule {get; set;}

在视图中,我写了以下内容:

<div id="step1" data-schedule="@Model.IsExistSchedule">
...
</div>

在生成的页面data-schedule中包含True值。
如何在 javascript 中正确使用这个值?
例如,我想检查变量是否为真:

var isExist = $('#step1').attr('data-schedule');
if( isExist === "True")
     do something

我不喜欢这部分isExist === "True"。我应该将它转换为 bool may be 或其他东西。恐怕在其他浏览器中,该变量可能包含其他值:true, True, "True", "true".
谢谢。

4

2 回答 2

10

通常,如果您需要任何 javascript 模型,最好在您的视图中执行此操作:

@Json.Encode(Model.IsExistSchedule)

这会将值“转换”为 javascript 可以理解的内容,例如小写布尔值。

然后,就像@Musa 建议的那样,使用 .data() 方法。

于 2012-07-31T05:06:18.597 回答
1

.data()方法会将其转换为布尔值,它与html5数据属性兼容

var isExist = $('#step1').data('schedule');
if (isExist)
    do something

注意"True"不会转换为,boolean(true)所以它必须是"true"

于 2012-07-31T04:33:57.133 回答