[英]Enable click button when a radio button is selected
我有一个由列表视图动态生成的单选按钮列表。 用户选择一个单选按钮,然后单击“更新”按钮以更新其数据。 我想让按钮保持禁用状态,直到用户做出选择为止。 我该怎么做?
<asp:ListView ID="ListView1" runat="server" DataKeyNames="ID_BG" DataSourceID="SqlDataSource_BGlist">
<ItemTemplate>
<itemtemplate>
<label><input id="Radio1" name="BG_list" type="radio" runat="server" value='<%# Eval("BG_fileName") %>'/>
<img alt="" style="width:150px" src="/Members/images/BG/icons/<%# Eval("BG_fileName") %>"></label>
</itemtemplate> ....
<asp:Button disabled="disabled" CssClass="btn btn-default" ID="UpdateButton" runat="server" CausesValidation="True" CommandName="Update" Text="Change" OnClientClick="return confirm('Are you sure you want to change your Background Image?');" />
尝试以下操作:使用.on()
作为动态生成的单选按钮,将change
事件绑定到单选按钮,并在其中启用更新按钮。
$(function(){
$(document).on('change','input[name="BG_list"]',function(){
$('#UpdateButton').removeAttr('disabled');
});
});
编辑 -使用更新按钮ID,例如$("#<%=UpdateButton.ClientID %>").removeAttr('disabled');
如@pid答案中所述。 由于我不是asp.net开发人员,因此不知道实际ID可能有所不同。
Ciao Gloria,
您应该添加jQuery,然后在标头中添加以下代码:
$(function () {
$("input[id*='Radio1']").click(function () {
$("#<%=UpdateButton.ClientID %>").removeAttr('disabled');
});
});
若要使ASP.NET用控件的实际ID <%=UpdateButton.ClientID %>
,必须将head作为服务器端控件,因为ASP.NET否则将不检查也不嵌套的<head>
的内容<script>
标签:
<head runat="server">
<script>
// server-side variant JS with ASP.NET <%= tags %>
</script>
</head>
有关此主题的更多信息,请参见 : 了解runat服务器属性
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.