我在下拉列表中添加了指定字段的员工(例如'员工')。当我尝试在另一个页面中编辑员工的个人资料时,指定应显示预先选择的下拉值以及下面的剩余值。(所选的指定不首先显示。它显示为正常下拉列表)
我试过了selected="selected"
<select class="form-control edited" id="designation_edit" name="designation_edit" ng-model="designation_edit">
<option value="HR" selected="selected">HR Executive</option>
<option value="Manager">Manager</option>
<option value="Employee">Employee</option>
<option value="Admin">Admin</option>
</select>
我的页面中有两个模态框。一个用于&#34;添加员工&#34;另一个是edit profile
。当我将具有指定值的员工从下拉列表添加为employee
时,此选定值应首先显示在编辑页面&#39;指定&#39;下拉列表中的剩余值下拉列表。
但目前,它在编辑个人资料页面中显示为正常下拉列表。我需要从添加页面中获取所选值并在此处显示。
请帮我在angularjs中提出这个问题。
在ajax调用中添加以下行是否正确
$('#designation_edit').attr("selected":"selected");
我试过了:
$('#designation_edit').append('Designation Manager Employee Admin');
答案 0 :(得分:2)
简单方法
如果您有一个用户作为响应或您定义的阵列/ JSON,首先您需要在控制器中设置所选值,然后在html中放置相同的型号名称。我写这个例子以最简单的方式解释。 简单的例子 内部控制器:
$scope.Users = ["Suresh","Mahesh","Ramesh"];
$scope.selectedUser = $scope.Users[0];
您的HTML
<select data-ng-options="usr for usr in Users" data-ng-model="selectedUser">
</select>
复杂的例子 内部控制器:
$scope.JSON = {
"ResponseObject":
[{
"Name": "Suresh",
"userID": 1
},
{
"Name": "Mahesh",
"userID": 2
}]
};
$scope.selectedUser = $scope.JSON.ResponseObject[0];
您的HTML
<select data-ng-options="usr.Name for usr in JSON.ResponseObject" data-ng-model="selectedUser"></select>
<h3>You selected: {{selectedUser.Name}}</h3>
答案 1 :(得分:1)
要显示所选值,您可以执行以下操作
为ng-model
指定默认值 $scope.empDesignationMapping = {
employee1 : "manager",
employee2 : "HR",
employee3: "Admin"
}
$scope.designation_edit = $scope.empDesignationMapping[employee1] // should be dynamic employee
<select ng-model="designation_edit" ng-selected="designation_edit" >
之后,无论何时选择某些内容,它都会显示为已选中。