2011-12-28 11 views
3

問題は、Drupal.settingsを使用してデータを取得するクライアント側の検証でajaxedフォームを使用していることです。 Drupal.settingsをクリアするには?

drupal_add_js(array(
'viewpoint_profile' => array(
    'year' => date('Y'), 
    'month' => date('m'), 
    'day' => date('d') 
)), 'setting'); 

しかし、フォームはAJAXが再ロードされるたびに、AJAXをリロードした後、それは、それは Drupal.settings.viewpoint_profile.year == array(2011, 2011)で、Drupal.settingsに上記の設定と最初の呼び出し Drupal.settings.viewpoint_profile.year == 2011の場合はマージ:年齢を検証するための一例として、私は、Drupalの設定に次のデータを設定しますだから私はこれを文字列としてjsで使用することはできません。

基本的に、viewpoint_profileの設定を追加する前にその設定をクリアするのは良いことですが、どのように見つけられなかったのでしょうか?またはこの問題を解決する別の方法があるかもしれませんか?

+0

フォームから設定割り当てを切り離し、モジュールのhook_initに移動しました。最高の解決策ではないかもしれませんが、今のところそれはうまくいくはずです。 – Ivan

+0

あなたはもっと良い解決策を見つけましたか? – bobylapointe

答えて

0

drupalの設定を使用する必要がある場合は、その値を配列に使用しない方がよいでしょう。

drupal_add_js(array(
    'viewpoint_profile' => array(array(
    'year' => date('Y'), 
    'month' => date('m'), 
    'day' => date('d') 
))), 'setting'); 

また、フォームに渡されるキーを追加することもできます。

関連する問題