2015-02-23 20 views
6

mam wyboru ASP w moim formularzu:Jak odzyskać HTML5 data- * atrybuty przy użyciu C#

<asp:CheckBox id="option" runat="server" OnCheckedChanged="checkChange" data-attributeA="somevalue1" data-attributeB="somevalue2" AutoPostBack="true" />` 

W moim OnCheckedChanged razie chcę odzyskać dane te dwa atrybuty.

protected void checkChange(object sender, EventArgs e) {} 

Jak to zrobić?

+1

możliwe duplikat [Jak mogę uzyskać dostęp do atrybutów niestandardowych tekstowe w ASP.NET? ] (http://stackoverflow.com/questions/12785946/how-can-i-access-custom-textbox-attributes-in-asp-net) – musefan

Odpowiedz

8

To samo podejście w łączu udostępnionym przez @musefan będzie działać.

Stworzyłem checkbox:

<asp:CheckBox ID="CheckBox1" runat="server" OnCheckedChanged="CheckBox1_CheckedChanged" dataAttributeA="Test Custom Attr A" dataAttributeB="Test Custom B" Text="Check it or dont" AutoPostBack="True" /> 

Następnie metoda obsłużyć zmienionych zdarzenie:

protected void CheckBox1_CheckedChanged(object sender, EventArgs e) 
    { 
     String customAttr1 = CheckBox1.Attributes["dataAttributeA"].ToString(); 
     String customAttr2 = CheckBox1.Attributes["dataAttributeB"].ToString(); 

     Response.Write("<h1> Custom Attributes A and B = " + customAttr1 + " " + customAttr2); 

    } 

I wreszcie mam ustawioną właściwość AutoPostBack z wyboru, aby prawda, więc jest to zmiana Zdarzenie zostanie uruchomione zaraz po kliknięciu.

Ja osiągnąłem oczekiwanego rezultatu

Atrybuty niestandardowe A i B = Test niestandardowy Attr Test niestandardowy B

Powiązane problemy