web-dev-qa-db-ja.com

form#attachedを使用して変数をDrupal.settingsに追加する方法

私はこの例を見つけました: http://deeson-online.co.uk/labs/how-use-formattached-javascript-setting-drupal-7-form-api

私は試した:

   $form['#attached']['js'][] = array(
            'data' => array(
                'my_module' => array(
                    'xx_code' => 'dsadsad',
                    'xx_key' => 'sadasd',
                ),
            ),
            'type' => 'setting',
        );

しかし運がなければ、Drupal.settings.my_moduleは未定義です

5
Codium

ドキュメントが利用可能です:

フォームAPI

$settings = array('id' => 'mymodule-element-1');

$form['#attached']['js'][] = array(
  'data' => array('mymodule' => $settings),
  'type' => 'setting',
);

Drupal 7 でJavaScriptを管理する

$element['#attached']['js'][] = array(
  'type' => 'setting',
  'data' => array('myModule' => array('key' => 'value')),
);

どちらも、OP(@drupality)が2013年6月14日のコメントで彼のために機能したと言ったのとほぼ同じです。

OPが試したが失敗したという元の質問のコードは、動作しているコードとほぼ同じように見えるため、元のエラーが何であるかわかりません。

4
AdamS