Menggunakan plugin TokenInput dan menggunakan validasi formController bawaan AngularJS.
Saat ini saya mencoba untuk memeriksa apakah bidang tersebut berisi teks, dan kemudian menyetel bidang ke valid jika memang demikian. Masalah dengan menggunakan plugin adalah itu menciptakan inputnya sendiri dan kemudian ul + li untuk stlying.
Saya memiliki akses ke addItem (formname) dan kemampuan saya di controller, saya hanya perlu mengaturnya ke $ valid.
Markup.
<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;
}
};
Saya menjalankan fungsi abilityValidation ketika TokenInput memiliki sesuatu yang masuk dan meneruskan objek.
EDIT:
Mengetahui ng-model pada masukan saya melakukan banyak hal dan mendapatkan hasil pelengkapan otomatis, itulah sebabnya saya tidak bisa mendapatkan ng-valid untuk bekerja karena didasarkan pada model.
$scope.inventoryCapabilitiesAutoComplete = {
options: {
tokenLimit: null
},
source: urlHelper.getAutoComplete('capability')
};
Saya tidak menulis implementasi pelengkapan otomatis ini, apakah ada cara lain untuk melakukan ini di mana saya akan memiliki akses ke attr model-ng dan memindahkan fungsi model ke tempat lain?
<div ... data-ng-show="capabilities_error" ...>
Dengan kata lain, apakah ada alasan Anda ingin / perlu menggunakan FormController?