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

angularJs绑定select的正确姿势

发布时间:2020-12-17 07:05:42 所属栏目:安全 来源:网络整理
导读:最近在项目中使用ionic,需要在页面上绑定一个年份下拉框,默认选中当前年,并且在下拉框的change事件中增加一些业务逻辑。 不管是使用ng-repeat还是ng-options,都是各种坑:默认选中、触发change事件、change后绑定的年份值(select的ng-model),三者中总有

最近在项目中使用ionic,需要在页面上绑定一个年份下拉框,默认选中当前年,并且在下拉框的change事件中增加一些业务逻辑。

不管是使用ng-repeat还是ng-options,都是各种坑:默认选中、触发change事件、change后绑定的年份值(select的ng-model),三者中总有不能正常工作的。此处省略1000字,全是血泪....

最后发现,要想让select正常工作:

1、要使用ng-options,不要用ng-repeat

2、ng-options绑定的集合元素,必须是对象,不能是简单的字符串

3、select的ng-model必须绑定对象,而不是简单的字符串

上代码:

1、html部分:

<select ng-model="statYear.selected" ng-change="loadStat();"  ng-options="y.val as y.text for y in years">

2、js部分:
$scope.years=[];

var now=new Date();
var thisYear=now.getFullYear();
for(var i=2018;i<=(thisYear+1);i++){
var obj={val:i,text:i+"年"};
$scope.years.push(obj);
}

$scope.statYear={
selected:thisYear
}

(编辑:李大同)

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

    推荐文章
      热点阅读