У меня есть панель, содержащая три разных формы внутри моего контроллера. Теперь, поскольку я понимаю, что ng-include создает дочерний объект, который делает его недоступным из родительской области.
Чтобы решить данные формы, я передал ng-модель обратно в функцию, которую я запускаю в ng-submit, но это только один способ.
В нормальной ситуации я могу это сделать:
HTML Form tag example
<form novalidate name="myForm" ng-submit="someFunction(form)">
HTML Form Field example
<input ng-model="form.first_name" name="first_name" type="text" pwtest required/>
Controller
$scope.myForm.first_name.$setValidity('required', false);
Это прекрасно работает и моя форма данных возвращения и я могу отправить его на пути к моему API и мое поле состояния также правильно установить.
Теперь к проблеме ..
HTML Form tag example
<form novalidate name="myForm" ng-submit="someFunction(form)">
HTML Form Field example
<input ng-model="form.first_name" name="first_name" type="text" pwtest required/>
Controller
$scope.myForm.first_name.$setValidity('required', false); <-- fails since myForm doesnt exist
Это нормально работает, но теперь моя форма существует в childscope и поэтому Myform становится неопределенным в мой контроллер, как это должно быть, конечно, так как оно не существует в объем.
добавляет контроллер ребенка вариант ? Вы можете ng-submit для метода дочернего контроллера, где он может установить правильность, тогда он мог бы вызвать метод на родительском контроллере. –
См. Также http://stackoverflow.com/questions/15818431/how-can-i-check-an-ng-included-forms-validity-from-the-parent-scope –
Возможно, просто чувствуйте, что оно должно быть проще? Но, возможно, это не так. Не могли бы вы дать небольшой фрагмент кода, как он мог бы выглядеть? – JoakimB