[英]MVC 3 Razor how to make complex javascript conditional?
我有这个多行的JavaScript代码段:
$.getJSON('@Url.Action("ReconBases")',
{ modelId: selectedModelId },
function(selectItems) {
buildDropDown('#SelectedReconId', selectItems);
});
我想根据视图模型变量有条件地将此脚本添加到页面中,如下所示:
@if ( Model.GetBases )
{
<snippet above>
}
任何人都可以告诉我这是否可行以及正确的语法? 我尝试过使用@:和Html.Raw,但我似乎无法获得正确的格式。
Razor中条件内的输出代码必须包含HTML标记,例如<div></div>
(这将“标记”为输出,而不是更多C#代码)。
如果没有特定标签符合您的需求,您可以使用Razor特定的特殊<text></text>
。 这些在渲染过程中不会输出。
@if ( Model.GetBases )
{
<text>
<snippet above>
</text>
}
这也适用for
, foreach
等。
你也可以在这里使用javascript一些代码片段来制作c#的条件。
多行JavaScript代码
使用<text></text>
@if ( Model.SomeProp == true)
{
<text>
<Your javaScript Multi-line code>
</text>
}
单行JavaScript代码
使用@:
@if ( Model.SomeProp == true)
{
@:<Your javaScript single code>
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.