1

しばらくの間、これを修正しようとしています。私のフォームには Dojo Filtering Select 要素がたくさんあります。デフォルトで選択される空白のオプションが必要です。エミュレートしたい (通常の <select> 構造の) 例を次に示します。

<select>
    <option value="">-</option>
    <option value="foo">Bar</option>
</select>

現在、上記のようにオプションが設定されたフィルター選択をロードすると、要素が選択されていません。これにより、フォームの送信が無効になります。フォームが機能しない理由がわからないため、これはエンド ユーザーにとってはまったく使用できません。選択は必須フィールドではありません。

同様の問題を抱えている人、またはより良い解決策を得た人はいますか?

あなたが助けることができれば乾杯:)

4

1 に答える 1

1

問題は、FilteringSelectがデータを保存する方法にあります。識別子とラベルを必要とするデータストアにそれらを保持します。このため、プレーンセレクトの機能を完全にエミュレートすることはできません。

「XXXX」(または別の偽の値)の値を持つ偽のアイテムをオプションに入れることで、これを「回避」できます。

<select>
    <option value="XXXX">-</option>
    <option value="foo">Bar</option>
</select>

このクラッジの欠点の1つは、検証関数を変更して、(空の値ではなく)この偽の値を探す必要があることです。

jsbin.comでテストを設定し、実際の動作を確認します。

于 2009-09-23T20:15:39.377 に答える