当我尝试序列化jQuery中的<%: Html.CheckBox("Something", true) %>
(使用form.serialize())时,我得到两个复选框,一个表示true,另一个表示false。我知道,MVC呈现真,假的复选框是真实的,所以如果我没有通过javascript,我只是检查是否存在真,但我怎么知道如果我的复选框后做表格检查。连载?Html.CheckBox呈现两个复选框
4
A
回答
4
如果你看看输出的HTML - 你会发现Html.Checkbox()实际上在其中呈现了一个额外的隐藏输入。这就是为什么你看到两个值。我相信微软决定这样做,以便一个适当的布尔获取张贴(而不是一个字符串值的'开'复选框)。
为了解决这个问题,我从来不再使用Html.Checkbox()助手,我总是自己写完整的HTML。
0
为什么不干脆:
var isChecked = $('#idofyourcheckbox').is(':checked');
至于存储在form.serialize()
字符串的值都在关注他们注定要到服务器,你可以简单地用布尔属性的作用。
相关问题
- 1. 如何呈现复选框?
- 2. 玉不呈现复选框文本?
- 3. 如何使用simple_form呈现复选框?
- 4. 复选框呈现为标签
- 5. 复选框呈现不一致
- 6. 切换两个复选框
- 7. @ Html.Checkbox全选
- 8. <%= html.checkbox(“Name”,布尔值)%>复选框没有被检查
- 9. 两个复选框位于一个复选框列表中
- 10. 创建两个选择所有复选框复选框
- 11. 只为kendotreeview选择两个复选框
- 12. 复选框两个复选框正在检查
- 13. 两个复选框作为一个
- 14. 两个或多个复选框之间没有未勾选的复选框
- 15. JQuery两个'全选'复选框跨两个表
- 16. 呈现复杂类型的文本框?
- 17. 复选框列表在IE11中的表格中未呈现
- 18. 复选框自定义呈现为handsontable不起作用
- 19. Facebook信使复选框插件不呈现
- 20. HTML to PDF使用Itext(复选框,无线电)未呈现
- 21. 验证复选框呈现里面的GridView的JavaScript
- 22. Kramdown似乎并没有像GitHub那样呈现复选框
- 23. MVC部分查看页面呈现下拉值和复选框
- 24. 呈现基于表单的CSV文件复选框[RAILS 3.0]
- 25. JTable头中的复选框与Nimbus L&F呈现不同
- 26. Asp.net复选框列表中随机呈现跨度
- 27. Ajax PrimeFaces不呈现事件或禁用复选框
- 28. ASP.NET MVC:从MultiSelectList呈现复选框列表
- 29. 在asp.net中更改复选框列表呈现
- 30. Winforms复选框:CheckState属性Indeterminate呈现不同
好像标准html复选框将它设置为“on”,如果它被选中而不是布尔值。在将它发送到我的服务器之前,如何将值“on”转换为true? – Prabhu 2011-03-29 16:55:10
您可以覆盖复选框的值,以便在发布时发送您选择的特定值。所以,你可以做的是:。当该复选框被选中时,jQuery表单序列化将mycheckbox = true。如果未选中,则不会序列化值。 – DNR 2011-03-29 17:16:09
有趣的是,我在模型中添加了一个与复选框控件的名称相匹配的属性,但即使序列化字符串的值为复选框,模型属性始终为false。我必须在我的操作方法中添加一个额外的参数来收集复选框的值。 – Prabhu 2011-03-29 17:44:17