2010-08-16 93 views
0

我在輸入共享相同密鑰的一個頁面中遇到了多個表單的問題。Drupal表單驗證將其他表單字段標記爲無效

我在頁面中有一個窗體,在同一頁面上顯示一個窗體中的另一個窗體。

這兩個表格都有一個字段名稱,正好是關鍵名稱(mail)。我無法改變這些字段的鍵,或者我會打破2個模塊。因此,無論何時我嘗試發佈頁面表單並且郵件丟失(這是必需的),我都被帶到標有紅色(這是正確的)字段的同一頁面,但塊表單也被標記爲(這是錯誤的,因爲我正在填充頁面表單,沒有塊)。

有誰知道如何避免這種行爲?我正在考慮hook_form_alter(),甚至是theme_preprocess_block(),但是在重新發明輪子之前......好吧,你知道的。

在此先感謝!

+0

你能從你的兩種形式提供的示例代碼?不確定當你說「同一把鑰匙」時你指的是什麼。 – 2010-08-18 05:55:54

回答

0

也許嘗試增加額外的驗證功能,以塊的形式,如果所有字段爲空,然後執行以下操作:

form_set_error(NULL, '', TRUE); 
$form_state['rebuild'] = TRUE;