在 ASP.NET MVC RC 中的 Html.Checkbox 中提交值的疯狂问题
一些值只是没有来到 Request.Params
在我的表格中,我在循环中有这条线:
<%=Html.CheckBox("cb" + p.Option.Id, p.Option.IsAllowed, new { value = 6 })%>
它呈现到下一个:
<input checked="checked" id="cb17" name="cb17" type="checkbox" value="6" />
<input name="cb17" type="hidden" value="false" />
<input checked="checked" id="cb18" name="cb18" type="checkbox" value="6" />
<input name="cb18" type="hidden" value="false" />
<input id="cb19" name="cb19" type="checkbox" value="6" />
<input name="cb19" type="hidden" value="false" />
<input id="cb20" name="cb20" type="checkbox" value="6" />
<input name="cb20" type="hidden" value="false" />
<input checked="checked" id="cb21" name="cb21" type="checkbox" value="6" />
<input name="cb21" type="hidden" value="false" />
提交表单后,我得到如下信息:
Form.Params["cb17"] = {6, "false"}
Form.Params["cb18"] = {6, "false"}
Form.Params["cb19"] = {"false"}
Form.Params["cb20"] = {"6,false"}
Form.Params["cb21"] = {"false"}
在请求字符串中有些参数显示两次(正常情况),有些只显示一次(只有隐藏字段的值)。似乎它不依赖于复选框是否被选中,值是否发生了变化......
有人遇到过这种情况吗?我该如何解决?