0

最初のオプションを選択したい場合、動的に作成された option[0] が常にオートフォーカスされ、機能しなくなりselectますoptiononchangeオプションのインデックスは重要であるため、" "オプションの作成は機能しません。何か案は?


edit: ユーザーがオブジェクトを作成します。ユーザーがオブジェクトを保存すると、select タグに新しいオプションが作成されます。ユーザーは select タグから何かを選択して、そのオブジェクトに戻ります。

オートフォーカスは、新しいオブジェクト/オプションを作成した場合でも、何か他のものを選択するまで常にオンにoption[0]なっているため、最初のものを選択したいが、2番目または3番目のものを選択した場合、ユーザーは最初に別のオプションをクリックしてから、彼らが望むもの。私が望むのは、ドロップダウンから何かを選択したかどうかに関係なく、最初から option[0] をクリックできるように、どのオプションにも焦点を当てていないことです。

4

3 に答える 3

1

要件の1つを変更するのではなく、この問題を回避するには多くの作業が必要なようです。インデックスは、オブジェクトの配列へのインデックスに対応するとおっしゃっています。最初のオプションを空白にするか、「選択...」にしてから、配列へのルックアップ用に 1 つだけ差し引くことができないのはなぜですか?

または、値を配列インデックスに対応させますか、それともカスタム データ属性を使用して配列インデックスを格納しますか? 複数のブラウザ間でサポートされていない機能に対して一貫した動作を強制しようとするよりも、これらのいずれかの方が簡単なようです。

于 2012-04-16T04:10:56.297 に答える
0

次の方法で、デフォルトの空の選択済みオプションを追加できます。

<option selected="selected" disabled="disabled" hidden="hidden" value=""></option>

select はデフォルトで空で、void オプションはオプション リストで選択できません。

于 2013-09-18T12:20:09.203 に答える
0

選択ボックスでは、常にそのオプションの 1 つが選択されています (オプションがない場合を除く)。別のイベント (おそらく onclick) を使用し、値が変更されたかどうかをテストする必要がある場合があります。

于 2012-04-16T03:14:53.710 に答える