<asp:ListView runat="server" ID="lsvAccessMode" ClientIDMode="Static" OnItemDataBound="lsvAccessMode_ItemDataBound">
<ItemTemplate>
<div class="col-xs-6 col-md-4 col-xs-12">
<asp:RadioButton runat="server" clientidmode="static" CssClass="customSelectBox disabled" ID="rbAccessMode" GroupName="accessMode" Enabled='<%#Convert.ToBoolean(Eval("IsSelected"))%>' />
<div class="customBox disabled" id="customBox">
<strong><%# Eval("Decode1") %></strong><br>
<img src="<%# Eval("ImagePath") %>" style="height: 80px"><br>
<span class="help-block"><%# Eval("Decode2") %></span>
</div>
</div>
</ItemTemplate>
</asp:ListView>
我上面的代码如下。因此,当我单击上面的其中一个按钮时,它会向其附加一个类。但我面临以下问题,我不知道要插入$(' ').click
函数的id部分。
任何人都可以提供帮助吗?
答案 0 :(得分:0)
为什么不使用css类?
// attach the handler on the DOM to include all dynamically generated controls, too
$(document).on('click', '.customSelectBox', function() {
// to get the one that was clicked
var $this = $(this);
// do the rest
});
e.g。
{{1}}
答案 1 :(得分:0)
使用下面的部分ID
$('[id*="rbAccessMode"]').click(
function() { $(this).addClass("yourClass");
});
答案 2 :(得分:0)
由于以下原因,您无法使用该ID为click事件分配函数。
您使用ClientIDMode="Static"
,因此页面上会有多个ID具有相同的值。
即使您要删除ClientIDMode="Static"
,您仍然无法使用ID rbAccessMode
,因为它位于重复数据的控件中,rbAccessMode
将变成这样的内容lsvAccessMode_rbAccessMode_2
以确保没有重复的ID。
删除所有ClientIDMode="Static"
属性,并根据类名指定click事件。
<script type="text/javascript">
$(".customSelectBox").click(function () {
$(this).addClass("yourClass");
});
</script>
答案 3 :(得分:0)
谢谢大家,我设法在你的帮助下解决了这个问题。感谢Joel和Ted的建议,我改变了代码的DOM结构。感谢VDWWD,我删除了ClientIDMode =“Static”并使其正常工作。以下是我的工作代码。
$(document).on('click', '#selectorBox', function () {
$(this).children().addClass('active');
});
<asp:ListView runat="server" ID="lsvAccessMode" ClientIDMode="Static" OnItemDataBound="lsvAccessMode_ItemDataBound">
<ItemTemplate>
<div id="selectorBox" class="col-xs-6 col-md-4 col-xs-12" runat="server" clientIDMode="Static">
<asp:RadioButton runat="server" CssClass="customSelectBox disabled" ID="rbAccessMode" GroupName="accessMode" Enabled='<%#Convert.ToBoolean(Eval("IsSelected"))%>' />
<div class="customBox disabled" id="customBox">
<strong><%# Eval("Decode1") %></strong><br>
<img src="<%# Eval("ImagePath") %>" style="height: 80px"><br>
<span class="help-block"><%# Eval("Decode2") %></span>
</div>
</div>
</ItemTemplate>
我在父类中添加了一个额外的ID而不是直接调用该按钮,我调用了它的父节点然后使用.children()方法向下导航。再次感谢大家。希望我的帖子可以帮助人们,特别是初学者,他们是asp.net的新手。