1

FileFieldDrupal の出力から「サイズ」属性を削除しようとしています。現在、次のようなタグを出力します。

 <input type="file" name="files[image]"  class="form-file" id="edit-image" size="40" />

unset()カスタム モジュールのコールバックで使用するいくつかの順列を試しました#pre_renderが、size="" になってしまいました。属性自体がなくなることはないため、HTML5 バリデーターは文句を言い続けます。これを達成する別の方法、またはコールバックが最後に実行されることを本当に保証する方法はありますか? $form['mystuff'][] = 'mycallback'はトリックを行っておらず、普通の古いunset($form['mystuff']['#size'])実行は遅すぎます。

4

1 に答える 1

1

試しましたhook_form_alter()か?

function YOUR_THEME_form_alter(&$form, &$form_state, $form_id) {
  if ($form_id == 'YOUR_FORM_ID') { // Selects the form you want        
    $form['YOUR_FIELD_NAME']['#size'] = NULL;
  } 
}

これにより、サイズを削除し、プレースホルダーなどの HTML5 ビットを追加することができました。

$form['name']['#attributes'] = array('placeholder' => t('username'));
于 2012-03-05T10:15:38.473 に答える