如果有错误消息,如何禁用特定按钮?

时间:2013-04-24 01:39:55

标签: php javascript jquery ajax user-interface

enter image description here

我这里有一个创建帐户表单,在用户ID 字段旁边,抱歉,用户ID已存在!是由AJAX生成的错误消息,通知用户,如果他输入的用户ID显然存在。此处的用户名字段与用户ID 具有相同的功能。我的问题是,如果显示的错误消息是抱歉,用户ID /用户名已存在,我如何禁用我的创建按钮? 。顺便说一下,邮件会变为用户ID /用户名

这是我的Jquery代码

   $(document).ready(function()
   {
     $('#create_btn').hover(function()
     {
       var id = $('#labeler').val();
       var user = $('#labeler2').val();

    if((id.indexOf('available') >= 0) && user.indexOf('available') >= 0)
    {
        $('#create_btn').removeProp('disabled');
    }
    else
    {
        $('#create_btn').prop('disabled', true);
    }
});
});

2 个答案:

答案 0 :(得分:0)

当你使用jQuery时,你可以这样做:

$("#buttonId").prop("disabled",true)

More discussion here

我怀疑labeler / labeler2span / div。在这种情况下,您应该使用text(),而不是val()。将这些行更改为:

var id = $('#labeler').text();//user id notification AJAX
var user = $('#labeler2').text();//username notification AJAX

答案 1 :(得分:0)

我最终这样做是因为我上面使用的代码能够禁用创建按钮,但由于.hover()无法读取禁用的按钮,因此无法再次启用它。谢谢你的帮助!

$(document).ready(function()
{
    $(':text').blur(function()
    {
        var id = $('#labeler').val();
        var user = $('#labeler2').val();

        if((id.indexOf('available') >= 0) && user.indexOf('available') >= 0)
            $('#create_btn').removeProp('disabled');
        else
            $('#create_btn').prop('disabled', true);
    });
});