2011-06-20 60 views
0

我真的很困惑。我有一個表格下面的HTML:爲什麼我的複選框返回錯誤的狀態?

<input class="check-box" 
    id="Data__Correct" 
    name="Data.Correct" 
    type="checkbox" value="Data.Correct" /> 

這將創建Web頁面

<input class="check-box" 
     id="Data__Correct" 
     name="Data.Correct" 
     type="checkbox" value="False" /> 

當我把支票在複選框以下,提交表單,並與fiddler我看到檢查它發送:

Data.Correct False 

我認爲這應該是相反的方式。發生了什麼?

+0

@Barcino複選框是否需要在提琴手中看到'checked'屬性並將其發送回服務器? –

+0

你在問什麼?請正確塑造你的問題 – diEcho

+0

以上是我的網頁的html。當我的頁面顯示在瀏覽器中時,我選中複選框,然後單擊提交。當我檢查小提琴手時,我發現返回到服務器的值是Data.Correct = False – Barcino

回答

3

您誤解了複選框的工作原理。如果複選框未選中,則不會將值傳遞給後端。如果複選框被選中,則value屬性中的值將傳遞到後端。在你的情況下,你設置的值爲False,所以你得到字符串False不要與布爾值false混淆。

如果有value='False'你的意圖是設置複選框的狀態上的負載,然後你,而不是需要這樣做:

<input type="checkbox" ... checked/> 

或者checked="checked"也應該工作,我相信。如果勾選存在,則選中該框,否則未勾選。

+0

謝謝你這麼多!我瘋了試圖解決它! – Barcino

相關問題