<div class="radio-toolbar">
<input type="checkbox" id="check1" name="checks" value="1">
<label for="check1">1</label>
<input type="checkbox" id="check2" name="checks" value="2">
<label for="check2">2</label>
<input type="checkbox" id="check3" name="checks" value="3">
<label for="check3">3</label>
</div>
我正在寻找一种方法来设置 ASP.NET VB Codebehind 这些标签的“onclick”属性,使标签看起来像:
<div class="radio-toolbar">
<input type="checkbox" id="check1" name="checks" value="1">
<label for="check1" onclick="some javascript">1</label>
<input type="checkbox" id="check2" name="checks" value="2">
<label for="check2" onclick="some javascript">2</label>
<input type="checkbox" id="check3" name="checks" value="3">
<label for="check3" onclick="some javascript">3</label>
</div>
所以,这可能吗?
答案 0 :(得分:1)
使用asp:Label
。
<asp:Label ID="lblChk1" runat="server" AssociatedControlID="check1" Text="1">
</asp:Label>
然后在你的代码背后:
lblChk1.Attributes.Add("onclick","some javascript");
修改:您只需使用asp:CheckBox
并使用其Text
媒体资源即可。然后单击该文本将触发CheckBox
的onclick事件。
答案 1 :(得分:0)
设置ID
属性并为标签添加runat=server
。然后,您可以访问代码隐藏中的标签:
<div class="radio-toolbar">
<input type="checkbox" id="check1" name="checks" value="1">
<label ID="label1" runat="server" for="check1">1</label>
<input type="checkbox" id="check2" name="checks" value="2">
<label ID="label2" runat="server" for="check2">2</label>
<input type="checkbox" id="check3" name="checks" value="3">
<label ID="label2" runat="server" for="check3">3</label>
</div>
答案 2 :(得分:0)
我将使用带有AssociatedControlID
属性的ASP.NET Label
控件而不是html标签,该属性呈现为label for
。
<asp:Label ID="Label1"
AssociatedControlID="check1"
onclick="somejavascript"
runat="server"
Text="1"></asp:Label>
您还可以从codebehind添加javascript:
Label1.Attributes.Add("onclick","somejavascript");
来自MSDN:
... 设置AssociatedControlID属性时,Label控件 呈现为HTML标签元素,将for属性设置为ID 关联控件的属性。您可以设置其他属性 使用Label属性的label元素。例如,您可以使用 Text和AccessKey属性提供标题和热键 对于相关的控制。
`