我正在尝试通过 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;
}
}
但它不起作用.....
答案 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');