我正在使用select2 of bootstrap来搜索下拉菜单,但问题是验证无效。以前它在没有select2的情况下工作,但现在它不工作,并且始终显示消息。
<div class="form-group" ng-class="{ 'has-error' : addEmployee.formAdd.pos.$invalid && !addEmployee.formAdd.pos.$pristine }">
<label>Position</label>
<select name="pos" id="pos" ng-model="addEmployee.employee.employee_positionID" class="form-control select2" required>
<option ng-repeat="option in addEmployee.position" value="{{option.position_id}}">{{option.position_name}}</option>
</select>
<p ng-show="addEmployee.formAdd.pos.$invalid && addEmployee.formAdd.pos.$dirty && addEmployee.formAdd.pos.$touched && addEmployee.formAdd.pos.$error.required" class="help-block">Position is required.</p>
</div>
答案 0 :(得分:0)
在尝试使用以下方法保存表单后,您仍然可以从控制器进行验证:
if ($scope[formName].$invalid) {
e.preventDefault();
angular.forEach($scope[formName].$error, function (field) {
angular.forEach(field, function(errorField){
errorField.$setTouched();
});
});
/*add some notification to user here*/
return;
}