2009-02-21 73 views
1

在我的drupal6站點中,我有嚮導窗體。我使用表單存儲和重建屬性使用FormAPI實現它。我的表單驗證正在使用#required屬性和#element_validate屬性中的函數完成。它工作正常,但有一件事,當我點擊上一個按鈕時,表單正在驗證,我不希望它。當點擊某個表單的特定按鈕時,是否有智能且正確的方法來禁用驗證?Drupal嚮導窗體:驗證和上一個按鈕

回答

1

乾淨地做到這一點(不幸)的唯一方法是避免使用#required = TRUE並在驗證處理程序中自己驗證它,同時考慮嚮導過程中表單所處的「步驟」的知識。

一種常見的方法是將所有正在進行的數據累積到$ form_state ['storage']中,並在重建之間保留它。

+0

謝謝。我正在使用$ form_state ['storage']。不幸的是,我將不得不做你說的話,並實現一個必需的驗證功能,然後驗證用戶是否點擊了上一個按鈕並且沒有驗證。 – 2009-02-21 12:11:34

1
// hack to clear validation errors during wizard processing 
    form_set_error(NULL, FALSE, TRUE); 
    unset($_SESSION['messages']['error']);