触发ng-change事件后,保留下拉用户选择的选项

时间:2016-10-26 11:32:47

标签: angularjs

如何在触发ng-change事件后保留用户选择的下拉列表框值?

  <select class="form-control" id="myId" placeholder=""  ng-model="myModel" ng-required="true" ng-options="myoption as myOptionModel for myOption in myOptions" ng-required="true" ng-change="callOnChange()"/>

用户选择的值应在下拉列表框中显示为已选中。目前,在选择下拉值后,它会进入初始状态(好像没有选择任何内容),但是,我可以访问callOnChange()函数中的选定值。

例如:如果列表有三个值“Apple”,“Mango”,“Orange”并且用户选择“Mango”,则在触发ng-change事件后应保持选择“Mango”。目前,当我选择一个值时,我会看到一个空白值,然后是“Apple”,“Mango”&amp; “橙色”。

1 个答案:

答案 0 :(得分:0)

你选择不好,试试这个:

HTML:

<select placeholder=""  ng-model="myModel" ng-required="true" ng-change="callOnChange()">
   <option ng-repeat="myoption in mail_notifications" value="{{myoption.key}}">{{myoption.value}}</option>
</select>

JS:

    $scope.callOnChange=function() {
    alert("hello");

  }
    $scope.mail_notifications = [
        {
            "key": "1",
            "value": "example1"
        },
        {
                "key": "2",
            "value": "example2"
        },
        {
            "key": "3",
            "value": "example3"
        }
    ];
    $scope.myModel = '';

和示例:https://jsfiddle.net/javierif/nbofm5ah/