2011-06-08 49 views
3

我有AA複選框,像這樣的值:爲什麼複選框張貼在

<label for="TBMasterProduct.BloodTestEnabled">Blood Test Enabled?</label> 
<input type="checkbox" name="TBMasterProduct.BloodTestEnabled" id="TBMasterProduct_BloodTestEnabled" class="cb" /> 

當我提交表單其發送「關於」對TBMasterProduct.BloodTestEnabled

爲什麼會一個複選框值發佈價值?肯定它應該是真/假

回答

11

爲什麼複選框會發布該值?

如果未使用value屬性明確設置,則默認值爲on

在寫這個答案的時候,這是非標準的錯誤恢復。在HTML 4中,the value attribute is mandatory for checkboxes。 HTML 5 makes the attribute optional with a default of on

當然,它應該是真/假

號要麼複選框被選中(並因此成功的),這樣的價值被提交,或者它是不是和複選框不會出現在提交的數據。

單個複選框可能具有布爾狀態,但多個輸入可以共享一個名稱來對它們進行分組。值然後區分列表中的哪些項目被選中。

+0

有關強制屬性的Interresting點。然而,W3C驗證器並沒有將其標記爲錯誤。 – Guffa 2011-06-08 20:47:48

+0

僅當其他屬性具有特定值時,DTD才具有足夠的表現力來使屬性成爲強制性的。驗證對質量保證的低級成果非常有用,但它不是全部。 – Quentin 2011-06-08 20:59:03

2

您的複選框沒有設置「值」。

2

不,它不應該是真/假。

複選框中的值僅在檢查時包含在窗體中。如果沒有選中,則根本沒有值。

發送的值是您使用value屬性指定的值。如果您未指定值,則使用默認值"on"