Angularjs 在构造列表中的元素中分配动态 ng 模型名称
Angularjs assigning dynamic ng-model name ,in constructing elements in list?
在这里我定义了我的代码,请帮助我。我在 laravel 的刀片模板引擎中使用 angularjs,在这种情况下我无法在角度中动态地为 ng 模型分配名称
$scope.categoryChange=function(id,model){
$scope.getCategories(id,model);
};//category change
orgusers=0;
$scope.users = new Array();
$scope.addUsers = function(){
if($scope.totalExperts>0){
orgusers++;
newUser={"name":"name"+orgusers,"model":"expertise"+orgusers,"category":"empcategory"+orgusers};
$scope.users.push(newUser);
if($scope.totalExperts!='' && $scope.totalExperts>0){
$scope.totalExperts--;
}
}else{
alert("To add users please input total experts field .");
document.getElementById('focusIt').focus();
}
};
$scope.removeUser = function(removeUser){
$scope.users.splice($scope.users.indexOf(removeUser),1);
if($scope.totalExperts!='' || $scope.totalExperts==0){
$scope.totalExperts++;
}
};
$scope.getCategories=function(catId,model){
experts=new Array();
angular.forEach($scope.categories, function(value,key) {
if(catId==value.parent){
experts[key]={id:value.id,name:value.category};
}
});
$scope[model]=experts;
};
<div>
<ul style="list-style-type: none;">
<li ng-repeat="user in users">
<label>Name:</label><input type="text" name="<%user.name%>" />
<label style="display:inline-block;">Email:</label><input type="text" name="empemail[]" />
<label style="display:inline-block;">Phone:</label><input type="text" name="empphone[]" />
{{ Form::label('select category','',array('style'=>'display:inline-block;')) }}
<select name="empcategories[]" ng-model="<%user.name%>" ng-options="k as v for (k,v) in mainCategories" ng-change="categoryChange(emp1,'<%user.model%>')" ></select>
{{ Form::label('Expertise','',array('style'=>'display:inline-block;')) }}
<select name="empspecialized[]" ng-model="empspecialization" ng-options="k as v.name for (k,v) in <% user.model %>">
</select>
<button ng-click="removeUser(user)">-</button>
</li>
</ul>
</div>
错误: [ngModel:nonassign] 表达式 '<%user%>' 是不可分配的。元素:任何建议或解决方案,正在等待,提前感谢
我找到了我发布的问题的解决方案。我犯的错误是,在此尝试将不可分配给选择选项值的值作为模型值,并将其更改为以下代码对我有用。
<div>
<ul style="list-style-type: none;">
<li ng-repeat="user in users">
<label>Name:</label><input type="text" name="<%user.name%>" />
<label style="display:inline-block;">Email:</label><input type="text" name="empemail[]" />
<label style="display:inline-block;">Phone:</label><input type="text" name="empphone[]" />
{{ Form::label('select category','',array('style'=>'display:inline-block;')) }}
<select name="empcategories[]" ng-model="user.category" ng-options="k as v for (k,v) in mainCategories" ng-change="categoryChange(user.category,'<%user.model%>')" ></select>
{{ Form::label('Expertise','',array('style'=>'display:inline-block;')) }}
<select name="empspecialized[]" ng-model="empspecialization" ng-options="k as v.name for (k,v) in <% user.model %>">
</select>
<button ng-click="removeUser(user)">-</button>
</li>
</ul>
</div>
我在这里需要的结果是我需要将当前选定的选项 id 传递给我的调用方法,以便我可以匹配并生成子类别列表。我希望它能帮助你, 谢谢
相关文章:
- 具有ng重复的动态ng模型
- ng重复中的动态ng模型
- 角度动态 ng 模型名称
- 角度 - 动态 ng 模型名称,ID 在 ng 重复中
- 具有动态 ng 重复项名称的可重用指令
- 如何计算具有动态ng模型名称的字段
- Angularjs 在构造列表中的元素中分配动态 ng 模型名称
- AngularJS:如何为输入type=text生成动态ng模型
- AngularJS:如何生成动态ng模型
- ng repeat内部的动态ng开关
- 动态ng模型
- Angularjs动态ng-if数据绑定在span中
- Angularjs-我们如何观察ngRepeat中的动态元素,以及动态ng模型名称和ANY更改时的过滤元素值
- 创建具有动态ng选项的指令
- Angular.js 1.4.7动态ng选项导致多个方法调用和infdig错误
- 动态ng类值
- 动态ng控制器名称
- 如何从控制器触发动态ng模型
- AngularJS复选框动态ng-true-value表达式
- ng-repeat中的动态ng-model名