Javascript 选择单选按钮时启用单击按钮
我有一个列表视图动态生成的单选按钮列表。用户选择一个单选按钮并单击更新按钮以更新其数据。我想一直禁用按钮,直到用户做出选择。我怎样才能做到这一点Javascript 选择单选按钮时启用单击按钮,javascript,jquery,asp.net,Javascript,Jquery,Asp.net,我有一个列表视图动态生成的单选按钮列表。用户选择一个单选按钮并单击更新按钮以更新其数据。我想一直禁用按钮,直到用户做出选择。我怎样才能做到这一点 <asp:ListView ID="ListView1" runat="server" DataKeyNames="ID_BG" DataSourceID="SqlDataSource_BGlist"> <ItemTemplate> <itemtemplate>
<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()
作为动态生成的单选按钮,并启用其中的更新按钮
$(function(){
$(document).on('change','input[name="BG_list"]',function(){
$('#UpdateButton').removeAttr('disabled');
});
});
编辑-使用更新按钮id,如@pid answer中提到的$(“#”)。删除attr('disabled');
。由于我不是asp.net开发人员,所以不知道实际id可能不同。再见,Gloria
您应该添加jQuery,然后在标题中添加这段代码:
$(function () {
$("input[id*='Radio1']").click(function () {
$("#<%=UpdateButton.ClientID %>").removeAttr('disabled');
});
});
$(函数(){
$(“输入[id*='Radio1']”)。单击(函数(){
$(“#”)removeAttr('disabled');
});
});
要让ASP.NET用控件的实际ID替换
,必须将标头作为服务器端控件启用,因为ASP.NET不会检查
或嵌套的
标记的内容:
<head runat="server">
<script>
// server-side variant JS with ASP.NET <%= tags %>
</script>
</head>
//带有ASP.NET的服务器端变体JS
有关此主题的详细信息:我在调试时遇到此错误。……名称“UpdateButton”在当前上下文中不存在。……很明显,脚本找不到按钮,可能是因为它在FormView中?啊,好的,是的。嵌套控件会导致这些问题。使用:
FormView1.FindControl(“UpdateButton”).ClientID
。谢谢大家……现在它可以工作了。这个功能有什么缺点吗,特别是在手机上?以前从未测试过。我认为没有任何缺点,你很好:)谢谢,但是脚本没有找到上面解释的按钮