我已经为一个应用程序工作了一个多月了。但我被困在一个地方。这个场景并不难,但我认为我缺少一些基本的东西。
场景:我在一个数组中收集众多下拉列表的选定值,并将它们传递给 app.js 中的控制器,这会将值保存在数据库中。
html 代码:注意:Alert 是一个自定义指令,会在单击“添加项目”按钮时生成下拉列表。
<div ng-controller="AlertDemoCtrl">
<alert ng-repeat="alert in alerts" type="alert.type" close="closeAlert($index)" ng-model="ProjectId[item.ProjectId]">
<ul style="list-style-type: none; margin-left: 0px;">
<li >
<!--data-ng-model="selectedProject[$index]"-->
<!--data-ng-model="test.ProjectId"-->
<!--<select data-ng-model="test.ProjectId"
data-ng-options="test.ProjectId as test.ProjectName for test in items" id="Project">-->
<select>
<option value="">-- Choose a Project --</option>
<option ng-repeat="item in items" value="{{item.ProjectId}}">{{item.ProjectName}}</option>
</select>
<button type="button" ng-click="closeAlert($index)"><img src="delete.png" alt="Remove" style="height:20px; width:20px;" /></button>
</li>
</ul>
</alert>
<button class='btn' type='button' ng-click="addAlert()">Add Projects</button>
</div>
app.js 的代码
var CreateCtrlEmp = function ($scope, $location, SampleEmp, SampleProj, SampleDes, sharedValues) {
$scope.items = SampleProj.query({ q: $scope.query });
$scope.itemsd = SampleDes.query({ q: $scope.query });
$scope.save = function (item) {
//$scope.item.ProjectId = new Array("5","8");
//$scope.ProjectId = new Array();
$scope.item.ProjectId = new Array(item);
alert($scope.item.ProjectId);
SampleEmp.save($scope.item);
$location.path('/emp');
};};
我想传递保存函数中的值。当我看到萤火虫面板中的值时。我可以看到数组中包含空值。
如果我在控制器中传递静态值,那么这些值将保存在数据库中。
请指导。
提前感谢很多。
图沙尔·夏尔马。