2013-04-09 65 views
0

我有一個自定義模塊,這個模塊用一些按鈕生成一個表格。當一個按鈕被點擊時,我用Ajax加載一個窗體並將它顯示在一個div中。調用該函數的鉤子菜單是例如/ myapp/get_form。關於Drupal和Ajax的問題​​

問題來了,當我必須保存一些新的生成的div的數據。我創建了這個div來保存ajax的數據($ form ['submit'] = array('#ajax'=> array(...))),但是這個新表單並沒有使用ajax保存數據,這個表單將數據發佈到/ myapp/get_form,但這不是我需要的行爲。

所以我有2個問題。

  1. 如何在這個新表單中發佈與ajax生成的數據?
  2. 用JQuery禁用提交和使用Ajax + JSON來保存數據(節點)會好嗎?

謝謝!

回答

0

您可以使用jQuery .submit方法來防止默認提交beahvior和處理它trought $。員額

注意,某些字段/模塊和#ajax東西需要包括在全頁面加載額外的JavaScript 。

爲了得到他們,你應該像$ js_list = drupal_add_js(檢索它們),然後添加到當前頁面使用jQuery(例如,在當前頁面的頭部將其添加爲標籤。)

後,加載腳本調用Drupal.attachBeahviors()將新加載的javascript功能附加到新窗體。