2012-08-24 27 views
0

我正在使用Drupal 7.15,並將Webform設置爲一個包含在聯繫頁面(基本頁面)中的塊。基本聯繫人頁面具有可編輯的側欄內容,然後是Webform塊作爲主要內容。我遇到的問題是將Webform提交給自己的別名'general-inqueries',而不是聯繫我們別名'contact-us'。我希望它返回到基本頁面與我們聯繫,並附有任何驗證錯誤和/或確認信息。Drupal - Webforms as Block - 修改動作

似乎表單動作始終是Webform別名,但是當我嘗試將別名更改爲基本頁面聯繫我們別名(contact-us)時,它表示此別名已被使用。

沒有爲錯誤或成功確認創建單獨的頁面,如何修改操作以返回提交的任何消息的原始頁面?我不希望我們JS在事後設置表單行爲。如果錯誤/成功消息沒有傳遞給它,那可能甚至無法幫助我。

這裏,如果你想看看測試服務器:

http://69.160.59.20/contact-us 

任何及所有的幫助深表感謝!

謝謝全部

回答

0

表單操作可以使用form_alter鉤子來設置。喜歡的東西:

my_module_form_alter($form, $form_state, $form_id) { 
    if ($form_id == 'webform_id_form') { 
    $form['#action'] = url('comment/reply/'. $edit['nid']); 
    } 
} 

如果您正在使用Drupal 7的跳過形式ID檢查,並嘗試:

my_module_form_form_id_alter($form, $form_state) { 
} 

,如果你不知道如何找到表單ID只需要使用上述功能與打印聲明:

my_module_form_alter($form, $form_state, $form_id) { 
    print($form_id); 
} 

並且表單id將是其中包含單詞webform的表單。

的形式API這裏更多細節: http://api.drupal.org/api/drupal/developer%21topics%21forms_api_reference.html/7#action

+0

大的信息。我能夠在template.php中添加一個form更改鉤子並更改表單動作。包括所有驗證/成功消息。謝謝! –