3

フォーム モジュールhttps://github.com/caolan/formsを使用しようとしています。問題なくフォームを簡単に作成できました。しかし、既存のフィールドに新しいクラス名をどのように追加するのか疑問に思っています。ドキュメントでは、ID のオーバーライドについて説明しています。しかし、タグに新しいクラスを追加する方法が見つかりませんでした。

以下を試してみましたが、うまくいきません!

  username: fields.string({
    required: true,
    label: 'So What',
    classes: ['classtest']
    }),

フィールドには、widget と呼ばれる属性 (属性「classes」があります) があります。しかし、それを機能させることもできませんでした。これは私が試したものです。これも失敗しました。

username: fields.string({
required: true,
label: 'So What',
widget: {
  classes: 'testclass'
}
}),

この点で助けになるでしょう。最終的に、ブートストラップでフォームのスタイルを設定しようとしています

4

1 に答える 1

0

モジュールは、ウィジェット レベル以外の場所ではクラスを許可していないようです。以下を使用して、クラスを入力ボックス (つまり、ウィジェット) に適用します。

username: fields.string({
    required: true,
    label: 'So What',
    widget: forms.widgets.text({
        classes: ['testclass']
    })
})

現在のフォーム モジュール API では、周囲の div 要素に配置されているクラスを拡張する方法が提供されていません。これは、私がそれをどのように見つけたかに関するスタックトレースの一部です:

  1. lib/fields.js#L68はforms.render.divを呼び出します
  2. forms.render.divfield.classes().join(' ')を呼び出します
  3. field.classes()はクラスの厳密な配列を返します。オプションは、field、error、および required のみです。
于 2012-10-30T16:25:26.937 に答える