Вы найдете здесь грабеж: plunker
Пользовательский интерфейс выглядит следующим образом: http://i.stack.imgur.com/7H1b3.png
У меня есть ng-repeat, с которым я хочу создать ng-click в шаблоне директивы. Имя шаблона как mainTemplate.html и его код ниже кода:
<form class="class">
<p>Inside directive</p>
<div ng-repeat='mainJson in mainJsonData'>
<div class="{{mainJson.divClass}}">
<input ng-model="mainJson[mainJson.inputNgModel]" type="{{mainJson.inputType}}" class="{{mainJson.inputClass}}" placeholder="{{mainJson.placeHolder}}" maxlength='{{mainJson.inputMaxLength}}' value="{{mainJson.value}}" ng-click="mainJson[mainJson.ngClick]()"/>
</div>
</div>
</div>
</form>
Директива:
add.directive('testData', function() {
return {
templateUrl: 'template/mainTemplate.html',
controller: function($scope, $http) {
$http.get('json/mainUi.json').success(function(response) {
$scope.mainJsonData = response;
});
}
};
});
И json, с которым я пытаюсь создать директиву:
[
{
"divClass":"form-group",
"inputType":"text",
"inputClass":"form-control",
"inputNgModel":"mobile",
"inputMaxLength":"10",
"placeHolder":"mobile"
},
{
"divClass":"form-group",
"inputType":"button",
"inputClass":"btn btn-success",
"ngClick":"addData",
"value":"Save",
"ngClickData":"name, city, mobile"
}
]
и я ищу ng-click как:
ng-click="addData(name, city, mobile)
который должен работать с ng-моделью, так как ng-модель также создается из
Вы можете разделить строку в массиве.
Как и в примере: https://plnkr.co/edit/6RHVKKhWQC4r3JsBAPEJ?p=preview
Я поставил жестко закодированный, что у вас есть, установил name|city|mobile
ваш mainJson[mainJson.inputNgModel]
.
ОБНОВИТЬ
Его работы, но idk, если его добро делает то, что вы делаете, основное внимание будет очень далеким.
Рабочая версия основана на вашем: https://plnkr.co/edit/opDKuIYkDmmR7Nk4xZeP?p=preview