как получить доступ к данным формы в сервлете, используя угловой JS

0

Я новичок в угловых js. пожалуйста, помогите мне с проблемой ниже. У меня есть форма с контроллером loginController. У меня есть два текстовых поля user.email и user.password. Я хочу, чтобы отправлять данные в сервлет onclick из Log in кнопки. Я написал следующий код, но когда я нажму " Log in, данные не будут отправляться на сервер. Также нет сообщения об ошибке.

Ниже мой JSP файл '

<html ng-app="practiceApp">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<link rel ="stylesheet" type="text/css" href="bootstrap.min.css"/>
</head>
<body>
    <script type="text/javascript" src="angular.min.js"></script>
<script type="text/javascript" src="practice.js"></script>
    <form name='login' ng-controller='loginController' ng-submit="login()">
        <div>
        {{hello}}
            <label>Email</label>
            <input type="email" name="email" ng-model="user.email" required/>
            <span ng-show='login.email.$dirty && login.email.$error.required'>Required</span>
            <span ng-show='login.email.$dirty && login.email.$error.email'>Not a valid email</span>
            <label>Password</label>
            <input type="password" name="password" ng-model="user.password" required/><br/>
            <span ng-show='login.password.$dirty && login.password.$error.required'>Required</span>
            <button ng-disabled="login.$invalid">Log in</button>
        </div>
    </form>
</body>
</html>

'

Файл JavaScript

'

var app = angular.module('practiceApp',[]);
app.controller('loginController',function($scope,$http){
    $scope.login = function(){

        $http({
            method: 'POST',
            url:'/login',
            headers:{'Content-Type':'application/json'},
            data:$scope.user
        }).success(function(data){
            $scope.status=data;
        });
    }

});

"Я пробовал все доступные решения, но не смог найти никакого результата. Просьба помочь в этом

Теги:
jsp
servlets

1 ответ

0
Лучший ответ

Ваша <button> не вызывает отправку формы. Изменить на <input type="submit" ng-disabled="login.$invalid">Log in</button> или удалить ng-submit из формы и добавить ng-click="login()" в <button>,

  • 0
    Я пытался это .. но не повезло. Когда я пытаюсь в веб-браузере, я получил сообщение об ошибке ниже, cannot read the property 0 of null
  • 0
    @ axn7975 также ваше name формы конфликтует с именем функции входа. Измените имя формы на «loginForm» или что-то отличное от имени функции входа.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню