我有一个巨大的形式,作为ERP的一部分,有很多巨大的形式,每个都有很多领域。
我现在正在尝试考虑更好的方法来创建一个关于if .required
字段为空的jQuery ckecker,然后阻止该事件并显示错误消息。只有在填写了所有.required
字段后,才会运行“提交”按钮。
我确实知道如何解决这个问题,并不难做到,但我觉得这种方式对于简单的表格,注册表格等都很有用...机器人不适用于超过700个字段的系统。我知道的一种方法是在var fieldName = $(#fieldID').val();
上设置每个字段的每个值,然后是:
if (fieldName == "") {
$("label#name_error").show();
$("input#name").focus();
e.preventDefault();
}
这是非常正确的,但我想知道你是否知道一些优化这个过程的方法,以避免产生数千个不必要的代码行。
非常感谢。
答案 0 :(得分:2)
在焦点上检查
$(':input[required=""],:input[required]').bind('focusout', function(){
if ($(this).val() == ""){
$(this).focus();
//and show some error in whatever way you want
}
})
答案 1 :(得分:0)
使用jQuery Validation Plugin。它有几种实用方法,您也可以自定义它。 http://jqueryvalidation.org/
答案 2 :(得分:0)
我建议您使用此插件进行前端验证:
答案 3 :(得分:0)
if($.trim(fieldname) == '' || $.trim(fieldname) == null || $.trim(fieldname) != 'undefined') {
}
或者你可以使用像
这样的正则表达式 if( '/^(.)*$/'.test(fieldname) ) { }
答案 4 :(得分:0)
为每个输入字段使用
<input name="name1" required />
(添加必需属性)
答案 5 :(得分:0)
1:在src脚本文件中添加jquery验证器js文件 - “
2:代码: 里面的标签 //使用Microsoft js验证器验证
$('#myform').validate({
rules:{
firstname:"required",
lastname:"required",
username:"required" ,
employeeid:"required",
email:{
required:true,
email:true
},
password:{
required:true,
minlength:5
},
phoneno:{
minlength:9,
maxlength:10,
}
},
messages:{
username:"Please enter your username..!",
password:"Please enter your password..!"
},
submitHandler: function(form) {
// do whatever you want
}
});
HTML表单声明
<form id="myform">
<input id="username" name="username" type="text"></input>
<input id="password" name="password" type="password"></input>
<input id="email" name="email" type="email"></input>
<input id="phoneno" name="phoneno" type="number"></input>
</form>
这是一种使用jquery验证器
进行验证的方法