1

ここに画像の説明を入力

vh.loadedViews私のモデルは、 4 つの項目を持つ配列です。

オプションの私のng-repeat:ng-repeat="view in vh.loadedViews"

選択時の私の ng-model:ng-model="view.description"

ただし、私の ng-change 関数vh.chooseViewでは、実際のモデル データではなくバインディング テキストを出力しています。

マークアップ:

<section class="saved-views-modal" ng-show="vh.loadSavedModal">
    <header><h1>Select a saved view</h1></header>

    <select name="select"
            ng-model="view.description"
            ng-change="vh.chooseView(view.description)">

        <option ng-repeat="view in vh.loadedViews"
                value="view.description">{{view.description}}</option>
    </select>

    <button class="btn-green"
            ng-click="vh.loadSavedView(view.description)">
                Load View
    </button>
</section>

ディレクティブ コントローラー:

var vm = this; // vh in markup

vm.chooseView = function(description) {
    console.log('chooseView > view.description: ');
    console.log(description);
}

ここに画像の説明を入力

4

1 に答える 1

1

valueオプションのタグが入力されていません。value="{{view.description}}"オプション値をレンダリングするのと同じように、補間を使用して入力する必要があります。

ng-model="vh.description"また、ng-modelは代わりにすべきですview.description

マークアップ

<select name="select"
        ng-model="vh.description"
        ng-change="vh.chooseView(view.description)">

    <option ng-repeat="view in vh.loadedViews"
            value="{{view.description}}">{{view.description}}</option>
</select>
于 2015-06-24T20:55:44.180 に答える