2011-08-03 62 views
0

所以我得到了一個與jQuery validate()插件的形式。我添加了一個自定義方法來檢查CNPJ(巴西公司的身份證號碼)是否有效。該字段不是必需的,我只是希望檢查它的價值,如果有人正在寫東西。問題是,當添加此規則時:jQuery驗證()addMethod力「required:true」

rules: { 
    cnpjcampo: {cnpjvalidate: true} 
} 

它確實使它「需要」。

我tryed這一點:

rules: { 
     cnpjcampo: {required:false, cnpjvalidate: true} 
} 

不影響任何東西。

我的表單正在使用jQuery wizard form以及chosen和[表單插件]。

爲了清楚地看到我在做什麼,我建立了一個jsFiddle。我點擊下一步按鈕(Proximo)它會觸發驗證插件,並告訴你名稱(nome fantasia)是錯誤的,這是正確的設置爲「必需」,也是CNPJ,不應該。

回答

0

找到了解決方案。我抹去我用的是addMethod,另一個js文件替換它發現here,改變了規則,以這樣的:

validationOptions: { 
    rules: { 
    "cpfsocio1" : { cpf: 'valid' /* 'valid' : sem formatação; 'format' : só formato; 'both' : os 2 */ }, 
    "cpfsocio2" : { cpf: 'valid' }, 
    "cnpjcampo" : { cnpj: 'valid' } 
    } 
}, 

這裏的更新對於那些有興趣的JsFiddle