我对使用AngularJS的HTML选择有一点问题。当我向我的API请愿时,我得到一个值作为整数,但当我尝试使用它自动填充选择时,我无法正确设置de“value”。
在这张图片中,您可以看到HTML正在接收的内容以及我想要设置的值
有没有办法施放这个值?
提前致谢:)
编辑:
控制器获取客户数据并填写表格
.controller('CustomerDetailCtrl', ['Customer', '$scope', '$sessionStorage', '$stateParams', '$ionicPopup', function (Customer, $scope, $sessionStorage, $stateParams, $ionicPopup) {
if ($sessionStorage.auth) {
Customer.get({data: $stateParams.customerId + '_' + $sessionStorage.user_id}).$promise.then(function (data) {
if (data.response && $sessionStorage.role === 1) {
$scope.customer = data.response[0];
if (data.history) {
$scope.histories = data.history;
}
} else {
console.log('Error de accesso...');
}
})
}
$scope.addTask = function (customer) {
alert('add task!');
}
$scope.deleteTask = function (customer, history) {
alert('delete task!');
}
}])
表格:
<label class="item item-input item-select">
<div class="input-label">
Cliente avisado?
</div>
<select name="informed" ng-model="customer.informed" required>
<option value="0">NO</option>
<option value="1">SI</option>
</select>
</label>
答案 0 :(得分:0)
在控制器的某处定义默认值:$scope.customer.informed = "NO";
答案 1 :(得分:0)
我知道你已经收到了关于此问题的答案,但我想向你展示另一个不需要将数据从int更改为字符串的潜在选项。如果您在控制器中为您的选择定义选项(或者在服务中为您的应用中的多个不同位置使用此选项),那么您可以利用ng-options
及其使用除a之外的值的能力字符串。
这是一个例子(显然我已经硬编了一些东西并把它们全部放在一个模块中 - 而不是你在真实应用中做的事情。)
JS:
angular.module('app', [])
.controller('ctrl', function($scope){
// select options (if these are common maybe store them in a service
// so you can share them in many controllers without duplicating the code)
$scope.selectOptions = [
{
text: 'NO',
value: 0
},
{
text: 'SI',
value: 1
}];
// sample data
$scope.customer = {
address: 'San Rosendo 11',
date: '2016-03-16T16:19:13+0100',
email: 'Montes',
equipment: 'PC',
id: 262,
informed: 1,
lastName: 'Montes',
location: 'Tienda',
name: 'Juanma',
notes: '',
pass: 'no tiene',
phone: '900112233',
price: '0',
status: 'Pendiente',
tasks: 'dfsdf'
};
});
HTML:
<div ng-app='app' ng-controller='ctrl'>
<select ng-model='customer.informed' ng-options='option.value as option.text for option in selectOptions'></select>
</div>