我在用户控件中有一个复选框,我将用户控件放在网页第5次。但只有一个复选框在此页面内的所有用户控件中工作和生效,其他第四个复选框不起作用。因此,如何使每个复选框独立工作或分离。 这是用户控件:
<div dir="rtl" id='<%=uniqueKey %>'>
<input type="checkbox" id="chkGregDate" runat="server" name="cland" value="1" />ميلادي
<input type="text" id="txtHijri_Date" runat="server" style="width: 90px" />
<input type="text" id="txtHijri_Date_EN" runat="server" style="width: 90px" />
<a id="imgCalendar" onclick="x<%=uniqueKey %>();">
<img id="imgCalendarss" src="../images/Smallcalendar.png" height="27px" alt='' />
</a>
</div>
Jquery功能:
jQuery(function() {
jQuery('#<%=chkGrog.ClientID%>').change(
function () {
if (jQuery('#<%=chkGrog.ClientID%>').is(':checked')){
jQuery('#<%=txtHijri_Date_EN.ClientID %>').show();
jQuery('#<%=txtHijri_Date.ClientID %>').hide();
} else {
jQuery('#<%=txtHijri_Date_EN.ClientID %>').hide();
jQuery('#<%=txtHijri_Date.ClientID %>').show();
}
}).change();
答案 0 :(得分:0)
您需要将正确的客户端ID传递给您的用户控件。如果您使用的是.NET 4.0及更高版本,则可以使用静态模式 - &gt;设置ClientIDMode="Static"
。
例如:
<asp:TextBox ID="txtName" runat="server" ClientIDMode="Static" />
。
否则您需要传递客户端ID。
请记住,客户端ID正在根据容器页面动态更改。
$(# + ClientId + "txtGreg_Date_EN").show();
修改强>
由于您在用户控件中使用.NET 4更新TextBoxes
<input type="text" id="txtHijri_Date" runat="server" style="width: 90px" ClientIDMode="Static" />
<input type="text" id="txtGreg_Date_EN" runat="server" style="width: 90px" ClientIDMode="Static" />