加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 角度选择不绑定到Ng模型

发布时间:2020-12-17 17:49:29 所属栏目:安全 来源:网络整理
导读:我的角度选择没有约束力.我可以告诉值是正确的,但是选择没有更新.如果值存在,为什么不绑定? div ng-controller="MyController" ng-app select class="form-control" ng-model="colorId"ng-options="color.id as color.name for color in colorList" option
我的角度选择没有约束力.我可以告诉值是正确的,但是选择没有更新.如果值存在,为什么不绑定?

<div ng-controller="MyController" ng-app>
    <select class="form-control" ng-model="colorId"ng-options="color.id as color.name for color in colorList">
        <option value="">--Select a Color--</option>
    </select>
<input type="button" value="submit" ng-click="Select()"></input>
function MyController($scope) {
    $scope.colorList = [{
        id: '1',name: 'red'
    },{
        id: '2',name: 'blue'
    },{
        id: '3',name: 'green'
    }];

    var colorId = 3;
    $scope.colorId = colorId;
    alert($scope.colorId);

    $scope.Select = function () {
        var colorId = 2;
        $scope.colorId = colorId;
    }
}

这是一个小提琴:

http://jsfiddle.net/ky5F4/23/

解决方法

在执行Select时,您需要将id更改为字符串

$scope.Select = function () {
    console.log('select fired');
    var colorId = 1;
    $scope.mySelection.colorId = colorId + "";
}

http://jsfiddle.net/bxkwfo0s/2/

接下来,您应该使用对象的属性而不仅仅是范围变量,这将确保正确的模型绑定

ng-model="mySelection.colorId"

对象可能是简单的东西

$scope.mySelection = {colorId : colorId };

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读