簡體   English   中英

在Drupal 7中的表單提交上運行JavaScript

[英]Run JavaScript on form submit in Drupal 7

我有一個帶有幾個字段的表單,用戶應該填寫。 表單還具有兩個隱藏字段供用戶當前位置(經緯度)使用。 我現在花了很多時間試圖找到一種方法來填充這些字段。

我希望它的工作方式是這樣的:提交表單時(表單標簽中的jQuery或OnSubmit),將運行一個要求設備定位的JavaScript函數。 然后,將用結果填充隱藏的字段。

我有執行此操作的代碼,但無法讓Drupal調用它。

有沒有辦法在Drupal中對表單提交運行JavaScript函數,或者我應該尋找另一種方法來執行它。

非常感謝,

嘗試使用#attributesonclick事件添加到提交按鈕。

$form['SUBMIT_BUTTON']['#attributes'] = array(
    'onclick' => array("YourJsCallback()"),
);

或者如果您已經在['#attributes']數組中添加了某些內容,則需要對其進行添加。

$form['SUBMIT_BUTTON']['#attributes']['onclick'] = array("YourJsCallback()");

似乎現在可以使用它了。 添加了以下內容

$form['#attributes'] = array('OnSubmit' => 'myFunction();');

您在“ www / misc / ajax.js”中具有以下鈎子,可以在javascript代碼中覆蓋它們:

/**
 * Modify form values prior to form submission.
*/
Drupal.ajax.prototype.beforeSubmit = function (form_values, element, options)
 {
      // This function is left empty to make it simple to override for modules
      // that wish to add functionality here.
 };

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM