AngularJs select绑定数字类型问题
一、AngularJs中select绑定ng-model数字类型绑定问题
使用ng-model绑定select的时候默认是string字符串,如果指定的number值会绑定失败
举例说明:
<body ng-app='module' ng-controller="myCtrl">
请选择性别:
<select name="sex" ng-model='sex' >
<option value="">请选择</option>
<option value="1">男</option>
<option value="2">女</option>
</select>
<button type="" ng-click="alter();">修改</button>
</form>
<script>
(function() {
'use strict';
var app= angular.module('module', [
]);
app.controller('myCtrl',function($scope){
$scope.sex="1"; //特别说明,此处指定的为字符串,如果是number类型则绑定不成功
console.info($scope);
$scope.alter=function(){
$scope.sex="2";
console.info($scope);
}
});
})();
</script指定数值类型,绑定失败
app.controller('myCtrl',function($scope){
$scope.sex=1; //特别说明,此处指定的为字符串,如果是number类型则绑定不成功
$scope.alter=function(){
$scope.sex=2;
console.info($scope);
}
});解决方案:如果需要指定number类型的值,对于select的绑定使用ng-options方式
请选择性别:
<select name="sex" ng-model='sex' ng-options='x.id as x.name for x in [{id:1,name:"男"},{id:2,name:"女"}]'>
<option value="">请选择</option>
</select>
<button type="" ng-click="alter();">修改</button>如果不一定非得number类型,在修改$scope的时候指定string类型就行了。
更多参考:
AngularJs ng-options
AngularJs ng-change事件/指令

相关推荐
专注前端开发 2020-10-21
苏康申 2020-11-13
vitasfly 2020-11-12
oraclemch 2020-11-06
liuyang000 2020-09-25
FellowYourHeart 2020-10-05
赵继业 2020-08-17
whyname 2020-08-16
Seandba 2020-08-16
dbasunny 2020-08-16
拼命工作好好玩 2020-08-15
langyue 2020-08-15
写程序的赵童鞋 2020-08-03
Accpcjg 2020-08-02
tydldd 2020-07-30
好记忆也需烂 2020-07-28
jianghero 2020-07-28