使用javascript和asp.net启用和禁用按钮

时间:2011-09-22 12:28:07

标签: javascript asp.net

我正在检查用户是否存在于数据库中(如果存在)我将消息显示为“已存在的用户”,然后我需要禁用注册按钮,如果不是我需要启用它。

我无法启用和禁用注册按钮。

有谁可以帮我解决这个问题?

这是我的代码:

 <script type="text/javascript">
     $(function () {
         $("#<% =btnavailable.ClientID %>").click(function () {
             if ($("#<% =txtUserName.ClientID %>").val() == "") {
                 $("#<% =txtUserName.ClientID %>").removeClass().addClass('notavailablecss').text('Required field cannot be blank').fadeIn("slow");

             } else {
                 $("#<% =txtUserName.ClientID %>").removeClass().addClass('messagebox').text('Checking...').fadeIn("slow");
                 $.post("LoginHandler.ashx", { uname: $("#<% =txtUserName.ClientID %>").val() }, function (result) {
                     if (result == "1") {
                         $("#<% =txtUserName.ClientID %>").addClass('notavailablecss').fadeTo(900, 1);
                       document.getElementById(#<% =btnSignUp.ClientID %>').enabled = false;
                     }
                     else if (result == "0") {
                         $("#<% =txtUserName.ClientID %>").addClass('availablecss').fadeTo(900, 1);
                        document.getElementById('#<% =btnSignUp.ClientID %>').enabled = true;
                     }
                     else {
                         $("#<% =txtUserName.ClientID %>").addClass('notavailablecss').fadeTo(900, 1);
                     }
                 });
             }
         });

         $("#<% =btnavailable.ClientID %>").ajaxError(function (event, request, settings, error) {
             alert("Error requesting page " + settings.url + " Error:" + error);
         });
     });
</script>

8 个答案:

答案 0 :(得分:12)

不幸的是,您的问题与enableddisabled

之间的差异一样小

.enabled = true;

应该是:

.disabled = false;

答案 1 :(得分:10)

你可以玩这个:

$('#ButtonId').prop("disabled", true); ->> disabled
$('#ButtonId').prop("disabled", false); ->> Enabled

答案 2 :(得分:5)

试试这个......

document.getElementById('<%= button.ClientID %>').disabled = true;

OR

document.getElementById('<%= button.ClientID %>').disabled = false;

答案 3 :(得分:5)

<强> JavaScript的:

 function Enable() {
      $("#btnSave").attr('disabled', false);                
    }
 function Disable() {
       $("#btnSave").attr('disabled', true);
    }  

ASPX页面

 <asp:Button runat="server" ID="btnSave" Text="Save" UseSubmitBehavior="false" OnClientClick="if(Page_ClientValidate('Validation')){javascript:Disable();}" ValidationGroup="Validation"/>

代码背后:

ScriptManager.RegisterStartupScript(Me, Me.GetType(), "Disable", "javascript:Disable();", True)

答案 4 :(得分:2)

你可以将你的按钮的可见性设置为false visibility =“false”

答案 5 :(得分:1)

.disabled确实有用,您是否使用了断点来确保您的代码被触及?您的条件if / else可能没有返回您的预期值。

答案 6 :(得分:0)

要使用JavaScript启用和禁用按钮,应该这样做 -

示例:

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="a(); return false;"/>
<asp:Button ID="Button2" runat="server" Text="Button" OnClientClick="b(); return false;" />

<script type="text/javascript">
   function a() {
       alert('1');
       document.getElementById('<%=Button1.ClientID %>').disabled = true;
       document.getElementById('<%=Button2.ClientID %>').disabled = false;
      }
   function b() {
       alert('2');
       document.getElementById('<%=Button2.ClientID %>').disabled = true;
       document.getElementById('<%=Button1.ClientID %>').disabled = false;
      }
 </script>

注意:虽然其他帖子的代码类似,但由于页面上的重新加载,它们会失败。因此,为了避免重新加载,应添加return false

之类的OnClientClick="a(); return false;"

答案 7 :(得分:0)

此JavaScript代码应该有效。

document.getElementById("<%=btnSignUp.ClientID%>").disabled = true; //To disable the button

document.getElementById("<%=btnSignUp.ClientID%>").disabled = false;//To enable the button

您的代码应该是

<script type="text/javascript">
     $(function () {
         $("#<% =btnavailable.ClientID %>").click(function () {
             if ($("#<% =txtUserName.ClientID %>").val() == "") {
                 $("#<% =txtUserName.ClientID %>").removeClass().addClass('notavailablecss').text('Required field cannot be blank').fadeIn("slow");

             } else {
                 $("#<% =txtUserName.ClientID %>").removeClass().addClass('messagebox').text('Checking...').fadeIn("slow");
                 $.post("LoginHandler.ashx", { uname: $("#<% =txtUserName.ClientID %>").val() }, function (result) {
                     if (result == "1") {
                         $("#<% =txtUserName.ClientID %>").addClass('notavailablecss').fadeTo(900, 1);
                       document.getElementById("<%=btnSignUp.ClientID%>").disabled = true;
                     }
                     else if (result == "0") {
                         $("#<% =txtUserName.ClientID %>").addClass('availablecss').fadeTo(900, 1);
                        document.getElementById("<%=btnSignUp.ClientID%>").disabled = false;
                     }
                     else {
                         $("#<% =txtUserName.ClientID %>").addClass('notavailablecss').fadeTo(900, 1);
                     }
                 });
             }
         });

         $("#<% =btnavailable.ClientID %>").ajaxError(function (event, request, settings, error) {
             alert("Error requesting page " + settings.url + " Error:" + error);
         });
     });
</script>