10643


セレクトタグのスタイルや簡易的なチェックを共通化するため、ディレクティブにしました。

このとき、未選択状態を項目に入れるため、HTMLにoptionを追加しましたが、  
未選択状態が一番上に着てほしいのに、順番が入れ替わってしまいます。

**template html**

[code]

    <div>
      <select ng-model="model" ng-options="item as item[labelName] for item in array">
        <option ng-if="!!hasTop" value="">選択してください</option>
      </select>
    </div>
    
[/code]

array は、$resource.query の戻り値です。

「選択してください」を絶えず先頭にするにはどうしたらよいでしょうか？


CC BY-SA 3.0
2015-05-26T07:50:10.533
10637
2015-05-26T11:30:43.627
9790
question
javascript angularjs
AngularJS selectタグのディレクティブで未選択状態が最上位にならない


英語サイトで回答もらいました。

optionタグにng-ifは使えないようです。

方法としては、

# 1. ngOptionsを自分で書き直す。

# 2. selectにng-ifもしくはng-switchを記述する。

# 3．ng-ifの変わりにng-showを使う。

があります。

ということでした。

情報共有のため記載しておきます。


CC BY-SA 3.0
2015-05-26T10:57:06.153
10643
2015-05-26T11:30:43.627
2020-06-17T08:14:45.997
-1
9790
10637
answer