當我嘗試序列化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. 如何使用simple_form呈現複選框?
- 3. 複選框呈現不一致
- 4. shinyTree不呈現複選框輸出
- 5. jquery複選框呈現變化數據
- 6. 複選框呈現爲標籤
- 7. 玉不呈現複選框文本?
- 8. 切換兩個複選框
- 9. @ Html.Checkbox全選
- 10. 複製所選行呈現
- 11. Symfony2呈現複選框選擇字段取消選中
- 12. 設置複選框Asp.net MVC的價值,Html.CheckBox
- 13. <%= html.checkbox(「Name」,布爾值)%>複選框沒有被檢查
- 14. 兩個複選框位於一個複選框列表中
- 15. 創建兩個選擇所有複選框複選框
- 16. 只爲kendotreeview選擇兩個複選框
- 17. 複選框兩個複選框正在檢查
- 18. 兩個複選框作爲一個
- 19. 單個TableRow中的兩個複選框?
- 20. 兩個或多個複選框之間沒有未勾選的複選框
- 21. JQuery兩個'全選'複選框跨兩個表
- 22. 多選複選框實現
- 23. 呈現複雜類型的文本框?
- 24. 複選框列表在IE11中的表格中未呈現
- 25. 呈現基於表單的CSV文件複選框[RAILS 3.0]
- 26. Symfony2:複選框字段錯誤始終呈現爲error_bubbling = true
- 27. 使用TCPDF中的複選框的Acrobat呈現錯誤
- 28. 在asp.net中更改複選框列表呈現
- 29. 複選框自定義呈現爲handsontable不起作用
- 30. Facebook信使複選框插件不呈現
好像標準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