2015-06-06 58 views
0

我有一个表格,其中填充了来自数据库的数据,因为我需要根据新的数据格式模式更改电话号码,所以我还需要立即启动预填充输入字段的验证。如何使用jQuery验证验证预先填充的输入字段?

我的JS代码如下:

$.validator.addMethod("mobileHR", function(phone_number, element) { 
    phone_number = phone_number.replace(/\(|\)|\s+|-/g, ""); 
    return this.optional(element) || phone_number.length > 9 && 
     phone_number.match(/^\+[0-9]{1,3}\.[0-9]{1,14}$/); 
}, "Unesite broj u fromatu: +385.111234567"); 

和函数调用:

方法根据新模式验证HR的电话号码

$(document).ready(function() { 
    // initialize validation 
    $('.form-horizontal').validate({ 
     // set immediate validation, on event code 9 
     onkeyup: function (element, event) { 
      if (event.which === 9 && this.elementValue(element) === "") { 
       return; 
      } else { 
       this.element(element); 
      } 
     }, 
     rules: { 
      "contactdetails[Registrant][Phone]": { 
       required: true, 
       mobileHR: true 
      } 
     }, 
     messages: { 
      "contactdetails[Registrant][Phone]": { 
       required: "Molimo unesite broj telefona" 
      } 
     } 
    }); 

}); 

输入字段是这样的,并且数据从数据库中获取时,value参数已被填充。

<div class="controls"> 
<input kl_virtual_keyboard_secure_input="on" name="contactdetails[Registrant][Phone]" value="011123456" size="30" class="Registrantcustomwhois" type="text"> 
</div> 

现在,我想提醒用户编辑数据,即使他并没有改变所需的输入域的数据,来更新他的电话号码的格式,所以我基本上要在调用的validate()函数文件已被加载。

带着例子的小提琴是here

+1

所以你只是想表明的形式负载验证消息? –

回答

2

将验证规则放在jQuery的准备好之后,只需添加$('.form-horizontal').valid();即可验证表单。

Fiddle,相应的更新

+0

谢谢,我现在看到有方法有效() –

+1

不客气:) –