アップロードされたファイルに基づいてフォーム フィールドを更新しようとしています。これらの更新を実行するために使用していますが、Web ページが最初に読み込まれたときにフィールドの をhook_form_alter()
変更できることがわかりました。ただし、ファイルがアップロードされた結果として が呼び出されたdefault_value
場合、同じことは機能しません。hook_form_alter()
例えば、
function mymodule_form_alter(&$form, &$form_state, $form_id){
// I can change the default value here
$form['field_myfield']['und'][0]['value']['#default_value'] = "Some Value";
// Check to see if the upload button has been pressed
if (array_key_exists('clicked_button', $form_state))){
$trigger = $form_state['clicked_button']['#value'];
if($trigger == 'Upload'){
// Try to change the default value here. The value is changed in $form,
// but the field is not updated on the website.
$form['field_myfield']['und'][0]['value']['#default_value'] = "New Value";
}
}
}
ある種のリフレッシュを実行する必要がありますか? 私はAHAHを簡単に見ましたが、これは私が使用する必要があるものですか? 私は Drupal を初めて使用するので、用語やアプローチに根本的な誤りがある場合は、あらかじめお詫び申し上げます。
どんな助けでも大歓迎です。