Javascript 提交表单时不显示错误类
我正在尝试使用JavaScript验证我的注册表单。我提交了表单,默认操作被阻止,但没有显示任何错误处理程序类,错误日志中也没有任何错误。如果有人能告诉我我做错了什么,我将不胜感激。如果用户没有填写输入,我试图在输入字段上显示红色背景Javascript 提交表单时不显示错误类,javascript,jquery,Javascript,Jquery,我正在尝试使用JavaScript验证我的注册表单。我提交了表单,默认操作被阻止,但没有显示任何错误处理程序类,错误日志中也没有任何错误。如果有人能告诉我我做错了什么,我将不胜感激。如果用户没有填写输入,我试图在输入字段上显示红色背景 $(文档).ready(函数(){ $(“#注册表格”)。提交(功能(e){ removeFeedback(); var errors=validateSignup(); 如果(错误==“”){ 返回true; }否则{ 提供反馈(错误); e、 预防默认值()
$(文档).ready(函数(){
$(“#注册表格”)。提交(功能(e){
removeFeedback();
var errors=validateSignup();
如果(错误==“”){
返回true;
}否则{
提供反馈(错误);
e、 预防默认值();
返回错误
}
});
函数validateSignup(){
var errorFields=新数组();
//检查必填字段以查看其中是否包含任何内容
if($('#signupFirst').val()=“”){
errorFields.push('first');
}
if($('#signupLast').val()=“”){
errorFields.push('last');
}
if($('#signupEmail').val()=“”){
errorFields.push(“电子邮件”);
}
if($('#signupPassword').val()=“”){
errorFields.push('pwd');
}
如果(!($('signupEmail').val().indexOf(“.”>2)和($('signupEmail').val().indexOf(“@”)){
errorFields.push(“电子邮件”);
}
返回errorFields();
}
函数提供反馈(错误字段){
对于(变量i=0;i
报名
这不正常:
return errorFields(); // Here you're trying to call a function with an array.
if (errors == "") { // This is not ok (it's always false), so, what you want to check is the length of errors.
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
if (errors.length === 0) {
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
只需返回数组:返回errorFields代码>
另一个问题是比较:
return errorFields(); // Here you're trying to call a function with an array.
if (errors == "") { // This is not ok (it's always false), so, what you want to check is the length of errors.
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
if (errors.length === 0) {
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
因此,检查长度:
return errorFields(); // Here you're trying to call a function with an array.
if (errors == "") { // This is not ok (it's always false), so, what you want to check is the length of errors.
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
if (errors.length === 0) {
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
这不正常:
return errorFields(); // Here you're trying to call a function with an array.
if (errors == "") { // This is not ok (it's always false), so, what you want to check is the length of errors.
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
if (errors.length === 0) {
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
只需返回数组:返回errorFields代码>
另一个问题是比较:
return errorFields(); // Here you're trying to call a function with an array.
if (errors == "") { // This is not ok (it's always false), so, what you want to check is the length of errors.
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
if (errors.length === 0) {
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
因此,检查长度:
return errorFields(); // Here you're trying to call a function with an array.
if (errors == "") { // This is not ok (it's always false), so, what you want to check is the length of errors.
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
if (errors.length === 0) {
return true;
} else {
provideFeedback(errors);
e.preventDefault();
return false
}
伙计,我已经修复了多个错误,虽然代码中的错误很小,但现在可以正常工作了
Plnkr:
您在errorFields数组中输入了错误的名称
由于字段名和DOM id不匹配,jquery无法找到元素并应用该类李>
我希望您可以比较并使此代码正常工作。伙计,我已经修复了多个错误,虽然代码中的错误很小,但现在工作正常
Plnkr:
您在errorFields数组中输入了错误的名称
由于字段名和DOM id不匹配,jquery无法找到元素并应用该类李>
我希望您可以比较并使此代码正常工作。在控制台中,有许多错误被抛出<代码>返回错误字段()代码>应该是返回错误字段代码>一方面errors==“”
将永远不会计算为true,因为errors
是一个数组,而不是一个字符串……在控制台中,有许多错误被抛出<代码>返回错误字段()代码>应该是返回错误字段代码>一方面errors==“”
将永远不会计算为true,因为errors
是一个数组,而不是一个字符串……它可以完美地工作。多谢。我真的想扔掉我的笔记本电脑。我希望我能投1000票。我会把它打印出来,挂在我的墙上,这样我就能从中学习。再次感谢。干得好的人。多谢。我真的想扔掉我的笔记本电脑。我希望我能投1000票。我会把它打印出来,挂在我的墙上,这样我就能从中学习。再次感谢。干杯