은 Using TokenInput의 플러그인 및 내장 FormController에 확인 AngularJS와를 사용하여.
지금은 필드에 텍스트가 포함되어 있는지 확인하고있는 경우 필드를 유효한 것으로 설정하려고합니다. 플러그인 사용의 문제는 자체 입력을 생성 한 다음 stlying을위한 ul + li를 생성한다는 것입니다.
컨트롤러에서 addItem (formname) 및 내 기능에 액세스 할 수 있습니다. $ valid로 설정하기 만하면됩니다.
마크 업.
<form class="form-horizontal add-inventory-item" name="addItem">
<input id="capabilities" name="capabilities" token-input data-ng-model="inventoryCapabilitiesAutoComplete" data-on-add="addCapability()" data-on-delete="removeCapability()" required>
<div class="required" data-ng-show="addItem.capabilities.$error.required" title="Please enter capability."></div>
</form>
JS.
$scope.capabilityValidation = function (capability) {
if (capability.name !== "") {
addItem.capabilities.$valid = true;
addItem.capabilities.$error.required = false;
} else {
addItem.capabilities.$valid = false;
addItem.capabilities.$error.required = true;
}
};
TokenInput에 무언가가 입력되어 개체에 전달되면 capabilityValidation 함수를 실행하고 있습니다.
편집하다:
내 입력에 대한 ng-model이 작업을 수행하고 자동 완성 결과를 얻습니다. 그래서 모델을 기반으로하므로 ng-valid를 사용할 수 없습니다.
$scope.inventoryCapabilitiesAutoComplete = {
options: {
tokenLimit: null
},
source: urlHelper.getAutoComplete('capability')
};
이 자동 완성 구현을 작성하지 않았습니다. ng-model 속성에 액세스하고 모델 함수를 다른 곳으로 옮길 수있는 또 다른 방법이 있습니까?
addItem.capabilities.$valid = true
addItem.capabilities. $ error.required를 적절하게 true 또는 false로 설정 했습니까 ?
<div ... data-ng-show="capabilities_error" ...>
이유는 무엇입니까? 즉, FormController를 사용하려는 이유가 있습니까?