Javascript 将数组值绑定到AngularJs中的下拉列表
我有一个编辑页面,我有一个名为“角色”的下拉列表,在插入时,我向db发送了一个值(如1,而不是“角色名称”),在检索编辑页面时,我无法在下拉列表中初始化所选文本 下面是我的html代码Javascript 将数组值绑定到AngularJs中的下拉列表,javascript,html,arrays,angularjs,options,Javascript,Html,Arrays,Angularjs,Options,我有一个编辑页面,我有一个名为“角色”的下拉列表,在插入时,我向db发送了一个值(如1,而不是“角色名称”),在检索编辑页面时,我无法在下拉列表中初始化所选文本 下面是我的html代码 <label class="adjust1-label-right">Role</label> <select id="role" class="adjust-select-combo" ng-options="r.role_name for r in Role_Name track
<label class="adjust1-label-right">Role</label>
<select id="role" class="adjust-select-combo" ng-options="r.role_name for r in Role_Name track by r.roleid" ng-model="role">
<option ng-repeat="rol.roleid for rol in Role_Name" value="{{rol.roleid}}">{{rol.role_name}}</option>
</select>
我的数据看起来像
[{"Role_Id":1,"User_Id":10001}]
您是否尝试过仅使用ng选项
<select id="role"
class="adjust-select-combo"
ng-options="r.Role_Id as r.User_Id for r in Role_Name"
ng-model="role"></select>
您的绑定无法工作,因为您在
选择中使用了ng选项
,在选项
中使用了ng repeat
,因此只能使用其中一个选项
并使用ng value
而不是value
,这是HTML绑定的方式:
<select id="role" class="adjust-select-combo" ng-model="role">
<option ng-selected="rol == role"
ng-repeat="rol in Role_Name"
ng-value="rol.Role_Id">{{rol.User_Id}}
</option>
</select>
{{rol.User_Id}
谢谢您的帮助:)还有一个简单的问题,如果我更改此选择,它会获取选择值而不是文本吗?@Tpk43不客气,如果您的意思是当您更改所选选项时,它会在控制器中更改吗?是的,它也会在角度控制器中更改。
$scope.role = $scope.Role_Name[0].Role_Id;
<select id="role" class="adjust-select-combo" ng-model="role">
<option ng-selected="rol == role"
ng-repeat="rol in Role_Name"
ng-value="rol.Role_Id">{{rol.User_Id}}
</option>
</select>