0
我在基元素之後添加了一些元素與diffrent ngModels,對一個輸入的任何改變都會影響所有輸入(ng模型是不同的)!!!在angularjs中添加一個接一個的隔離元素
我該如何解決這個問題。
實際上,我做了一個html字符串並編譯它,然後使用.after添加元素。
但是當我添加2個或更多的元素時,任何改變都會影響它們。
控制器:
function makeElement() {
var idName = "level" + vm.currentLevel + "";
var idCss = "#" + idName + "";
if (angular.element(idCss).length) {
angular.element(idCss).remove();
}
setTimeout('', 1000);
console.log("getChildren", vm);
var htmlStr = angular.element(
'<div id="'+ idName +'" class="row"> ' +
'<div class="col-xs-8"> ' +
'<label class="vertical">{{vm.dataLevel[vm.currentLevel].Title}}</label> ' +
'<input type="text" id="level-' + vm.currentLevel + '-code" class="k-textbox quarter-width ltr" value="{{vm.dataLevel[vm.currentLevel].item.Code}}" disabled /> ' +
'<select id="data-level-' + vm.currentLevel + '" class="three-quarter-width" ng-hide="vm.isBusy" ' +
'kendo-drop-down-list ' +
'k-options="vm.dataLevel[vm.currentLevel]" ' +
'k-rebind ="vm.dataLevel[vm.currentLevel]"></select> ' +
'<span ng-show="vm.isBusy"><i class="fa fa-spinner fa-spin"></i></span> ' +
'</div> ' +
'<div class="col-xs-4 align-left" ng-show="!vm.isBusy"> ' +
'<label class="vertical transparent">1</label> ' +
'<a kendo-button ng-click="vm.openActionDialog(1,0)"> ' +
'<i class="fa fa-plus fa-fw"></i> ' +
'</a> ' +
'<a kendo-button data-ng-disabled="!vm.dataLevel[vm.currentLevel].item.Code" ng-click="vm.openActionDialog(2,0,vm.currentLevel0Item)"> ' +
'<i class=" fa fa-edit fa-fw"></i> ' +
'</a> ' +
'<a kendo-button data-ng-disabled="!vm.dataLevel[vm.currentLevel].item.Code" ng-click="vm.openActionDialog(3,0,vm.currentLevel0Item)"> ' +
'<i class="fa fa-trash-o fa-fw"></i> ' +
'</a> ' +
'<a kendo-button ng-click="vm.getData(0,0,true)"> ' +
'<i class="fa fa-refresh fa-fw"></i> ' +
'</a> ' +
'</div> ' +
'</div> <br />');
return $compile(htmlStr)($scope);
}
它們綁定到不同的ngModels。 – dfsq
我以前做過,但沒有工作。 – data
然後你可能做錯了。無論如何,沒有代碼是不可能分辨的。 – dfsq