Максимальный размер стека вызовов превышен при попытке отправить форму с JQuery и AJAX - PullRequest
0 голосов
/ 21 апреля 2020

Итак, я довольно новичок в программировании веб-приложений, и сегодня я решил создать систему входа в систему. Однако при попытке проверить учетные данные пользователя, используя AJAX, возникает одна проблема: "VM7707 jquery -3.5.0. js: 8885 Uncaught RangeError: Превышен максимальный размер стека вызовов ".

Если я правильно понял причину этой проблемы, есть функция, вызывающая себя или другую, снова и снова. Я могу быть слепым и тупым, потому что я действительно не знаю, как решить эту проблему, ниже вы можете увидеть фрагмент моего кода, эта функция запускается, когда я отправляю свою форму для входа.

Я попытался удалить и изменить путь к файлу, который должна вызывать функция, но проблема остается. Я также читал, что, чтобы избежать проблемы, вы можете иногда написать $ ('# loginForm') [0] .submit, но это тоже не сработало.

Это мой первый раз в стеке, так что я извините, если что-то не так с моим способом адресации, но я застрял на этом препятствии уже более часа, хе-хе.

Был бы благодарен, если бы кто-нибудь объяснил мне, почему это происходит в этом случае: ) спасибо.

JavaScript
$('#loginForm').submit(function() {
    $.post("./models/validateModel.php", {
        name: loginUsername,
        password: loginPassword
    }).done(function(data) {

        if (data === false) { //if the data isn't false i have a heading in validateModel.php
            console.log("Unsuccessful Login Attempt");
        }
    });
});
HTML
<form id="loginForm" method="post">
   <div class="form-group">
      <label for="loginUsername">Användarnamn</label>
      <input id="loginUsername" type="text" class="form-control" name="loginUsername">
   </div>
   <div class="form-group">
      <label for="loginPassword">Lösenord</label>
      <input id="loginPassword" type="password" class="form-control" name="password">
   </div>
   <button type="submit" id="loginKnapp" class="btn btn-primary w-100 disabled" disabled>Logga In</button>
   <button type="button" id="registerButton" class="btn btn-primary w-100 mt-4">Inte Registrerad?</button>
</form>
Console
    VM10 jquery-3.5.0.js:8885 Uncaught RangeError: Maximum call stack size 
    exceeded
    at buildParams (VM10 jquery-3.5.0.js:8885)
    at buildParams (VM10 jquery-3.5.0.js:8913)
    at buildParams (VM10 jquery-3.5.0.js:8913)
    at buildParams (jquery-3.5.0.js:8913)
    at buildParams (jquery-3.5.0.js:8913)
    at buildParams (jquery-3.5.0.js:8913)
    at buildParams (jquery-3.5.0.js:8913)
    at buildParams (jquery-3.5.0.js:8913)
    buildParams @ jquery-3.5.0.js:8885
    buildParams @ jquery-3.5.0.js:8913
    buildParams @ jquery-3.5.0.js:8913
    buildParams @ jquery-3.5.0.js:8913
    buildParams @ jquery-3.5.0.js:8913
    buildParams @ jquery-3.5.0.js:8913
    buildParams @ jquery-3.5.0.js:8913

    VM10 jquery-3.5.0.js:5228 [Violation] 'submit' handler took 4843ms

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...