访问 .cshtml 文件中的 html 元素
在网络表单中,您可以附加 onclick 并使复选框回发,以便您可以启用/禁用元素。您也可以在 MVC 中的 .cshtml 文件中执行此操作吗?
例如:
@Html.CheckBox("box")
@if (box.Checked) {
RenderSection("section")
}
或者,如果不可能,是否有办法从 javascript 运行 C# 代码(如渲染调用)?
in webforms you can attach an onclick and make the checkbox postback, so you can enable/disable elements. Can you do this in MVC as well, in the .cshtml file?
For example:
@Html.CheckBox("box")
@if (box.Checked) {
RenderSection("section")
}
or, if that isn't possible, is there a way to run C# code (like Render calls) from javascript?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不,在 Webforms 中,复选框实际上是一个类,它在渲染时输出一个复选框,从而使您可以访问诸如 Checked 之类的变量。
如果您尝试确定是否在复选框在渲染时具有真值的情况下调用 RenderSection("section"),那么您将需要通过代码检查条件 - 无论该条件是什么。
或者,如果这是一个动态的事情,选中复选框会显示该部分,然后再次单击会隐藏它,那么您将需要使用 JavaScript。在 jQuery 中执行此操作非常简单。
在 jQuery 中,您可能希望在相关复选框上使用 .change() 。在该块中检查它。
No, in webforms the checkbox is actually a class that outputs a checkbox on render and thus gives you access to variables such as Checked.
If you are trying to determine whether or not to call
RenderSection("section")
if the checkbox has a true value on rendering, then you will want to check the condition via code - whatever that condition may be.Alternatively if this is a dynamic thing where checking a checkbox shows the section and clicking again hides it, then you will want to use JavaScript. Doing this in jQuery would be pretty trivial.
In jQuery, you would likely want to use .change() on the checkbox in question. Check it in that block.
在 JavaScript 中,您可以使用美元符号和主题标签引用 MVC3 控件:
In JavaScript, you can reference MVC3 controls w/ a dollar-sign and hashtag: