【问题标题】:Accessing html elements in .cshtml files访问 .cshtml 文件中的 html 元素
【发布时间】:2011-05-17 02:14:33
【问题描述】:

在网络表单中,您可以附加 onclick 并使复选框回发,因此您可以启用/禁用元素。你也可以在 MVC 中的 .cshtml 文件中执行此操作吗?

例如:

@Html.CheckBox("box")

@if (box.Checked) {
    RenderSection("section")
}

或者,如果这不可能,有没有办法从 javascript 运行 C# 代码(如 Render 调用)?

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    不,在 web 表单中,复选框实际上是一个在渲染时输出复选框的类,因此您可以访问变量,例如 Checked。

    如果您尝试确定是否调用RenderSection("section")(如果复选框在呈现时为真值),那么您将需要通过代码检查条件 - 无论该条件是什么。

    或者,如果这是一个动态的事情,选中复选框会显示该部分并再次单击将其隐藏,那么您将需要使用 JavaScript。在 jQuery 中执行此操作非常简单。

    在 jQuery 中,您可能希望在相关复选框上使用 .change()。在那个块中检查它。

    【讨论】:

    • 非常感谢,这正是我认为需要的,我已经准备好 jQuery 了。
    【解决方案2】:

    在 JavaScript 中,您可以引用带有美元符号和主题标签的 MVC3 控件:

    $("#myDropDown").show();
    $("#otherDropDown").hide();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-24
      • 2014-09-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多