2017-06-13 11 views
0

在我的項目中,我將PHP中的字段驗證錯誤作爲數組獲取。該結構是如何使用帶有字段名稱和錯誤消息的數組使用JQuery驗證來放置動態錯誤

$error_array = [ 
    'field_name1' => 'Error 1', 
    'field_name2' => 'Error 2', 
    'field_name3' => 'Error 3', 
    'field_name4' => 'Error 4', 
    'field_name5' => 'Error 5',   
]; 
echo json_encode($error_array); 

有沒有辦法使用jQuery驗證庫放置在表單這些錯誤?我試過了,但沒有得到任何解決方案。 現在我正在使用jquery識別每個字段,並使用自定義函數來放置錯誤。尋找一個簡單的解決方案。

+0

你試過了嗎?告訴我們你的嘗試。當頁面加載時,爲什麼不將'echo'消息放入JavaScript中? – Sparky

回答

0

根據您的OP陣列上,該JSON encoded版本是這樣的......

{'field_name1':'Error 1','field_name2':'Error 2',...} 

您的JSON的編碼陣列與messages對象的內.validate()可接受的結構完全對齊的結構.. 。

$('#myform').validate({ 
    // your rules & options, 
    messages: { 
     'field_name1': 'Error 1', 
     'field_name2': 'Error 2', 
     .... 
    } 
}); 

那麼,爲什麼可以在頁面加載你剛纔echo消息到JavaScript的...

$('#myform').validate({ 
    // your rules & options, 
    messages: <?php echo json_encode($error_array); ?> 
}); 

請注意,通常每個郵件被分配到每個字段name下的每個規則。在你的情況下,一個消息被分配給每個字段,所以相同的消息將被用於在一個字段上的所有規則

相關問題