[英]How can I get the value of an attribute from code behind?
我有一個復選框,負責顯示/隱藏div。 我創建了一個自定義屬性“ myDiv”,並在其中放置了復選框負責的div的名稱。
<asp:CheckBox ID="CheckBox1" myDiv="divRegisteration" myText=" הרשמה - " runat="server" AutoPostBack="true" Font-Size="18px" Font-Bold="true" Text=" הרשמה - הצג" OnCheckedChanged="CheckBox_CheckedChanged"/>
當我嘗試從后面的代碼中獲取div的名稱時,出現錯誤:
protected void CheckBox_CheckedChanged(object sender, EventArgs e)
{
if (((CheckBox)(sender)).Checked==true)
{
CheckBox chk = (CheckBox)(sender);
object div = chk.Parent.FindControl(chk.Attributes["myDiv"]);
它找不到屬性“ myDiv”。 由於某種原因,它只能找到2個屬性,我什至都不知道它們來自何處。 還有另一種獲取自定義屬性的方法嗎?
您只能將屬性設置為在客戶端渲染,當from是POSTED
時,無法直接訪問屬性值(在服務器端)。 要訪問屬性值,您可以使用可通過javascript在客戶端設置的隱藏字段。
您可以通過使用jQuery來做到這一點
if ($('#CheckBox1').is(':checked')) {
$("#Urdiv").show();
} else {
$("#Urdiv").hide();
}
在CheckBox1使用clientId
是的,您可以從后面的代碼中獲取屬性的值。 例如,如果您具有這樣的復選框控件:
<input type="checkbox" runat="server" id="chkBoxCreate" class="item" itemid="1" onclick="Create();" />
那么您可以在下面的代碼中獲取它的價值,如下所示:
string itemId = chkBoxCreate.Attributes["itemid"];
請享用 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.