Это похоже на очень простой вопрос, но по какой-либо причине мой метод submit()
не вызывается в JS.Javascript submit не работает
HTML:
<ion-view title="Register" hide-nav-bar="true" nav-transition="none" id="page9">
<ion-content padding="true" class="manual-ios-statusbar-padding" scroll="false">
<form id="register-form4" ng-submit="register()" class="list">
<ion-list id="register-list4">
<label class="item item-input" id="register-input7">
<input type="text" ng-model="registration.email" placeholder="Email" required>
</label>
<label class="item item-input" id="register-input9">
<input type="password" ng-model="registration.password" placeholder="Password" required>
</label>
</ion-list>
</form>
<a id="register-button7" ng-click="document.getElementById('register-form4').submit();" class="button button-positive button-block">Create Account</a>
<a ui-sref="login" id="register-button8" class="button button-positive button-block button-clear">Back</a>
<div ng-show="isError">{{ loginError }}</div>
</ion-content>
</ion-view>
Контроллер:
.controller('registerCtrl', ['$scope', '$stateParams', "$firebaseAuth", "$location",
function ($scope, $stateParams, $firebaseAuth, $location) {
$scope.register = function() {
var email = $scope.registration.email,
password = $scope.registration.password,
confirmPassword = $scope.registration.confirmPassword;
console.log("Being submitted");
}
}])
я не могу изменить <a>
тег, даже если это было бы проще просто иметь форму представить input
но HTML является авто -генерированный Ионным Творцом, и я не могу испортить его.
EDIT: Поэтому я хочу, чтобы отправить форму таким образом, а не просто вызвать register()
по нажатию кнопки, что я хочу, чтобы вызвать HTML required
«s в форме, так что проверяет поля были поэтому мне не нужно это делать вручную
EDIT 2: Я изменил тег <a>
на кнопку отправки. Однако, это еще не вызывая register()
метод, который предполагает форму не представляется:
<input type="submit" value="Create Account" id="register-button7" class="button button-positive button-block">
Глядя на этих docs, он должен работать, как это в значительной степени тот же формат
Я прочитал, что 1 пользовательские вещи, которые стандартные HTML submit
и ng-submit
не работают вместе. Кто-нибудь знает, верно ли это?
Попробуйте использовать «onclick» вместо «ng-click». –
Почему бы вам просто не установить 'ngClick' в' ng-click = "register()" '? Я не вижу причин, по которым вам нужно найти элемент формы для отправки формы в этом случае. Вышеприведенный код не работает, потому что '$ scope.document' не определен. Кроме того, я бы сказал, что ваше текущее использование 'document.getElementById()' не является «угловым способом». TM – c1moore
@ c1moore У меня было это первоначально. Идея заключается в том, что если я отправлю форму, она вызовет HTML 'required', так что мне не нужно их вручную проверять. – wmash