2012-03-07 124 views
7

沒有屬性Value爲什麼我不能在asp:CheckBox上設置值?

<asp:CheckBox ID="CheckBox1" runat="server" /> 

,而在標準的HTML這是允許的:

<input type="checkbox" ID="CheckBox1" value="My Valyue" /> 

爲什麼呢?

+1

@Mr Lister:http://www.w3schools.com/jsref/dom_obj_checkbox.asp – markzzz 2012-03-07 10:08:51

+0

糟糕。我的心一定是在別的地方,對不起。 – 2012-03-07 10:20:42

回答

22

Text屬性用於呈現該複選框的標籤。

控制有一個InputAttributes屬性,您可以添加到:

myChk.InputAttributes.Add("value", "My Value"); 

我相信,如果你只是value屬性添加到標記,這也將得到填充。

您可以訪問值,像這樣:

myChk.InputAttributes["value"]; 

要回答的的問題,爲什麼Value不是屬性構建的CheckBox控制:

一個孤立的CheckBox (就其本身而言)不需要任何價值。根據定義,它是一個布爾值並由其ID標識。所有你需要做的是檢查它是否被檢查。

值進場時,你複選框,並沒有該控件 - 使用ListItemCheckBoxList - 每個ListItem確實有Value財產。

+0

這似乎很奇怪,我得到它的其他控件,但複選框?價值似乎更有意義。我想所有關於從GenericElement等繼承跨越通用接口的迭代。 – 2012-03-07 10:00:47

+1

不!文本屬性應該是複選框旁邊的「標籤」,而不是複選框本身的值.. – markzzz 2012-03-07 10:05:01

+0

@markzzz - 你說得對,我的錯。答案已更新。 – Oded 2012-03-07 10:12:52

相關問題