jQuery添加禁用

时间:2016-10-25 16:42:22

标签: javascript jquery

我正在尝试通过 jQuery 进行表单验证,并在我添加属性时出错 - "禁用"提交按钮(var s)

我的jQuery是:

function validateForm() {
    var f = document.forms["shamir"]["fullname"].value;
    var x = document.forms["shamir"]["phone"].value;
    var y = document.forms["shamir"]["club"].value;
    var s = document.forms["shamir"]["submit"];
    var isnum = /^\d+$/.test(x);
    if(!f) {
        alert("fill name");
        return false;
    }
    if(isnum) {
        if (x.length == 10) {
            if(x == 0 || x <= 0111111111 || x == 1111111111 || x == 2222222222
                || x == 3333333333 || x == 4444444444 || x == 5555555555 || x == 6666666666
                || x == 7777777777 || x == 8888888888 || x == 9999999999 || x == 1234567890) {
                alert("fix number");
                return false;
            }
            if(y == "none") {
                alert("select club");
                return false;
            } else {
        jQuery(s).attr('disabled', 'disabled')
        return true;
            }
        } else {
            alert("10 digits");
            return false;
        }
    } else {
        alert("error");
        return false;
    }
}

我试过这个:

if(y == "none") {
    alert("select club");
    return false;
} else {
    if(jQuery(s).attr('disabled', 'disabled')) {
        return true;
    }
}

但它不起作用.....

2 个答案:

答案 0 :(得分:0)

如果要操作它上面的DOM,你必须将该表单转换为jQuery对象。

例如,这不是一个jQuery对象 - 所以你不能将jQuery方法应用于它:

var s = document.forms["shamir"]["submit"];

相反,您需要这样做:

var form = $("document.forms");  //convert form to jQuery object
var s = form["shamir"]["submit"]; //work with form object

答案 1 :(得分:-1)

你试过.prop()吗?

jQuery(s).prop('disabled', true)

或是():

jQuery(s).is(':disabled');