jQuery高级表单系统无法正常工作

时间:2014-01-08 20:24:27

标签: javascript jquery html

我正在开发一个高级注册表单,我需要最后一部分的帮助...代码的想法是只有在确认所有表单输入时才激活提交按钮。 (这样我对人们来说更快,更漂亮,如果你问为什么......)但那并不是正在发生的事情......只有当我编辑最后一个输入(Captacha)时,如果所有输入都被确认,则激活提交按钮。可以在这里找到jQuery代码:http://pastebin.com/yLTYKkcD和页面(HTML结构+脚本)可以在这里找到:http://pastebin.com/7BnyQaN0(不包括Bootstrap CSS和JS,所以它可能看起来很难看)我是不是很擅长jQuery / JavaScript,所以请告诉我代码的错误以及我如何改进的好提示。

$(document).ready(function () {

var password = false;
var username = false;
var email = false;
var captacha = false;
var re = /^(([^<>()[\]\\.,#$%^&*!;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/

$("[title!='']").qtip({
content: {
attr:"title"
},
style: {
classes:"qtip-bootstrap"
}
});

$("#username").change(function() {
var uname = $(this).val();
if (uname.length < 8) {
$(this).attr("title", "Username must be 8 or more characters long.");
$("#UG").attr("class", "form-group has-error");
username = false;
} else {
$.ajax({
url: "check.php?username=" + uname
}).done(function(data) {
if (data=="true") {
$("#username").attr("title", "All correct.");
$("#UG").attr("class", "form-group has-success");
username = true;
} else {
$("#username").attr("title", "Error - " + data);
$("#UG").attr("class", "form-group has-error");
username = false;
}
});
}
updateInfo();
});

function updateInfo() {
if (password && username && email && !captacha) {
/*$("#submit").prop("disabled", false);*/
$("#username").prop("disabled", true);
$("#email").prop("disabled", true);
$("#pass").prop("disabled", true);
$("#passr").prop("disabled", true);
$("#CG").slideDown(600);
} else {
if (password && username && email && captacha) {
$("#username").prop("disabled", false);
$("#email").prop("disabled", false);
$("#pass").prop("disabled", false);
$("#passr").prop("disabled", false);
$("#submit").prop("disabled", false);
$("#capt").prop("disabled", true);
$("#CG").slideUp(600);
} else {
$("#submit").prop("disabled", true);
}
}
}

$("#username").prop("disabled", false);
$("#email").prop("disabled", false);
$("#pass").prop("disabled", false);
$("#passr").prop("disabled", false);
$("#capt").prop("disabled", false);
$("#submit").prop("disabled", true);
updateInfo();

0 个答案:

没有答案