我有一个临时JavaScript对象currentExpense
,对象构造TestExpense
和阵列TestExpenses
的角度控制装置,其新创建的对象TestExpense
将通过功能submitExpenses
推动。这些代码如下:NG-模型JavaScript对象属性设置为阵列
$scope.currentExpense = {
employeeId: 9,
date: '',
account: '',
task: '',
expenseType: '',
expenseCategory: '',
notes: '',
amount: ''
};
function TestExpense(employeeId, date, account, task, expenseType,
expenseCategory, notes, amount) {
this.employeeId = employeeId;
this.date = date;
this.account = account;
this.task = task;
this.expenseType = expenseType;
this.expenseCategory = expenseCategory;
this.notes = notes;
this.amount = amount;
}
$scope.TestExpenses = [];
$scope.submitExpenses = function() {
$scope.TestExpenses = [];
$scope.TestExpenses.push(
new TestExpense(
$scope.currentExpense.employeeId,
$scope.currentExpense.date,
$scope.currentExpense.account,
$scope.currentExpense.task,
$scope.currentExpense.expenseType,
$scope.currentExpense.expenseCategory,
$scope.currentExpense.notes,
$scope.currentExpense.amount
)
);
console.log($scope.TestExpenses);
};
一个在我看来的ng-model
用法如下:
<select multiple="" class="form-control" ng-model="currentExpense.expenseType"
ng-options="task.expenseTypeId as task.expenseTypeTitle for task in ExpenseTypes" required>
</select>
这里是相关ExpenseType
构造函数和ExpenseTypes
阵列:
function ExpenseType(expenseTypeId, expenseTypeTitle) {
this.expenseTypeId = expenseTypeId;
this.expenseTypeTitle = expenseTypeTitle;
}
$scope.ExpenseTypes = [];
我的问题是,在记录TestExpenses
数组中的对象时,我看到数组为expenseType
pro perty:
TestExpense
account:"a"
amount:""
date:""
employeeId:9
expenseCategory: Array[1]
0: 2
length:1
__proto__:Array[0]
expenseType:Array[1]
0:4
length:1
__proto__:Array[0]
notes:""
我的目标是让expenseType
财产仅仅是4
,而不是它目前被设置为数组。
任何有关如何完成此操作的建议都非常受欢迎!
任何Plunkr或到的jsfiddle看到它在行动? – malix