javascript - MVC 3 Razor 如何使复杂的 javascript 有条件?

标签 javascript asp.net-mvc-3 razor

我有这个多行 javascript 片段:

$.getJSON('@Url.Action("ReconBases")', 
          { modelId: selectedModelId },
          function(selectItems) { 
            buildDropDown('#SelectedReconId', selectItems); 
          });

我想根据 View 模型变量有条件地将此脚本添加到页面,如下所示:

@if ( Model.GetBases )
{
  <snippet above>
}

谁能告诉我这是否可行以及这样做的正确语法?我试过使用 @: 和 Html.Raw,但我似乎无法获得正确的格式以使其正常工作。

最佳答案

Razor 条件中的输出代码必须被 HTML 标记包围,例如 <div></div> (这会将其“标记”为输出,而不是更多 C# 代码)。

如果没有适合您需要的特定标签,您可以使用特殊的 <text></text>特定于 Razor。这些在渲染期间输出。

@if ( Model.GetBases )
{
  <text>
    <snippet above>
  </text>
}

这也适用于 for , foreach

关于javascript - MVC 3 Razor 如何使复杂的 javascript 有条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9651896/

相关文章:

javascript - 如何切换这个元素?

asp.net-mvc-3 - 在 POST 上从 RenderPartial 检索 ViewModel 的子集

c# - 在更改第一个 ddl 时使用 jquery ajax 绑定(bind)下拉列表

ajax - Asp.net Core 2.0 Razor 页面 Ajax Post

javascript - 使用 jQuery 获取元素时,值未定义

JavaScript - 遍历对象

javascript - jQuery/Javascript 将文本节点拆分为两个或三个?

asp.net-mvc-3 - MVC3虚拟目录 View 文件夹非常慢

asp.net-mvc-3 - Ajax.ActionLink 不会停留在同一页面上

asp.net-mvc-3 - 如何使用Razor显示条件纯文本