使用 ASP.Net MVC1 并在模型中动态创建 html,然后将其放入视图并在运行时呈现。
我的视图是一个看起来像这样的页面:
<%@ Page Language="VB" Inherits="System.Web.Mvc.ViewPage" %>
<%=(ViewData("Content"))%>
这种动态创建的内容大多是下拉列表框,格式为
<form method=post action="/questions/nextBatch">
<div id="text">What is your preferred drink?</div>
<select>
<option selected value="noSelect"> - Please make a selection - </option>
<option value="a" >Milk</option>
<option value="b" >Coffee</option>
<option value="c" >Tea</option>
</select>
</form>
是否可以对下拉列表执行验证以确保已选择一个值?如果任何下拉列表仍具有默认值(“请进行选择”文本),则页面会重新显示,问题的字体颜色或下拉列表框更改为红色?
我来自 Webforms 世界,并且已经切换到 MVC(我真的很喜欢!),我知道那里有一些非常漂亮的验证工具,但您似乎必须在视图本身中考虑它们。
我无法通过控制器的 viewdata 传递 HTML 帮助程序,因为它不会呈现,除非它已直接编码到视图本身中。
此外,我正在寻找一个纯 asp.net 解决方案,因为由于可访问性问题,我无法使用 javascript。我可以通过 formscollection 对象毫无问题地访问下拉列表的所有值,但是从那里我有点卡住了。
有什么我想念的吗?
非常感谢您的任何建议或帮助!