2

ng-model 属性を持つ select タグを使用しています。ng-model で選択した要素の値を取得します。選択した要素のラベルも取得するにはどうすればよいですか。ラベルとその値の両方を取得したいと思います。ありがとう。

4

1 に答える 1

0

ng-repeat を使用して選択肢を作成するか、テンプレートに手動で入力していると思います。ラベルと値を同じモデルに設定すると可能です。あなたが持っている場合:

$scope.choices = {
    "choiceone" : "The first Choice",
    "choicetwo" : "The second Choice",
    "choicethree" : "The third Choice"}

次のように実装できます。

<select ng-model="choice">
    <option ng-repeat="(key, value) in choices" value="{{key}}">{{value}}</option>
</select>

ただし、これは select ディレクティブを使用する最良の方法ではありません (これがあなたがしていることだと仮定して)。select ディレクティブには、より明確な方法で値とラベルの両方を定義する ng-options 属性があります。このテーマに関するドキュメントのサンプル Plunkr を編集しました。これには、ngRepeat の使用例が含まれています: http://plnkr.co/edit/sjQuhlgBh8WWJJoaSSMG?p=preview

ここで ng-options 属性に関するドキュメントを確認してください: http://docs.angularjs.org/api/ng.directive:select

于 2013-05-23T13:20:17.043 に答える