Javascript 使用jquery验证字段

Javascript 使用jquery验证字段,javascript,jquery,html,jquery-validate,Javascript,Jquery,Html,Jquery Validate,我正在创建一个表单,需要输入一些字段 基本的required属性对我不起作用,所以我想使用jQuery 然后,当这些字段已填充时,将启用“提交”按钮 这是我的密码: $(函数(){ $(“#目录_顺序”)。验证( { 规则:{ 附表:{ 必填项:true } }, 信息:{ 附表:“请注明附表”, } }); $(“#签入输入”)。在('keyup blur',函数(e){//在每个keyup和blur上激发 if($('#签入').valid(){ $(“#提交”).attr('disabl

我正在创建一个表单,需要输入一些字段

基本的required属性对我不起作用,所以我想使用jQuery

然后,当这些字段已填充时,将启用“提交”按钮

这是我的密码:

$(函数(){
$(“#目录_顺序”)。验证(
{
规则:{
附表:{
必填项:true
}
},
信息:{
附表:“请注明附表”,
}
});
$(“#签入输入”)。在('keyup blur',函数(e){//在每个keyup和blur上激发
if($('#签入').valid(){
$(“#提交”).attr('disabled',false);
}
否则{
$(“#提交”).attr('disabled',true);
}
});
});

奉献文本:
日期:
雕像:
--雕像--
天使
天线管

我就是这样验证的。 返回false与禁用它完全相同


$('#checkin')。在('submit',function()上{
var delivetalog=$.trim($('#delivetalog').val());
var date=$.trim($('#date').val());
如果(奉献时间=“”| |日期=“”){
返回false;
}
});
这应该行得通

请注意,对于每个
字段
,您应该在
js对象
内(括号之间)指定其所有选项

下面是工作代码段

jQuery.validator.addMethod(“dateFormat”,函数(值,元素){
log(值,/^(0?[1-9]| 1[0-2])\/(0?[1-9]| 1[0-9]| 2[0-9]| 3[01])\/\d{2}$/.test(值));
返回/^(0?[1-9]| 1[0-2])\/(0?[1-9]| 1[0-9]| 2[0-9]| 3[01])\/\d{2}$/。测试(值);
},“无效日期!”;
$(函数(){
$(“#签入”)。验证(
{
规则:{
附表:{
要求:正确,
日期格式:true,
}
},
信息:{
必填:“必填字段!”
}
});
$(“#签入输入”)。在('keyup blur',函数(e){//在每个keyup和blur上激发
if($('#签入').valid(){
$(“#提交”).attr('disabled',false);
}
否则{
$(“#提交”).attr('disabled',true);
}
});
});

奉献文本:
日期:

您可以使用
invalidHandler
参数检查任何无效字段:

invalidHandler: function(event, validator) {
  var errors = validator.numberOfInvalids();
  if (errors) {
    $('#button').hide();
  } else {
    $('#button').show();
  }
}

这里有一个类似的线程:提交按钮仍然是启用的,我如何先禁用它,然后在填写完字段后,我可以单击提交。我已经按照您的要求禁用/启用了按钮,请参见上面的代码:)谢谢,正是我所需要的。但当我把它应用到我的真实页面时,只有一个字段就足够我继续了。这其实很奇怪;如果我应用更多字段进行检查,会发生什么?我设法在“规则”和“消息”上使用相同的方法。。。我想知道这里出了什么问题……是的,您可以在规则和消息中添加任意名称属性,您说过这只适用于一个字段,您是否需要在规则中指定名称属性而不是id!如果是这样,你可以分享一个网址到你的网站!
schedule: {
       required: true
},
invalidHandler: function(event, validator) {
  var errors = validator.numberOfInvalids();
  if (errors) {
    $('#button').hide();
  } else {
    $('#button').show();
  }
}