JQuery POST reqeust работает только при отладке - PullRequest
0 голосов
/ 29 октября 2019

Кажется, что моя функция публикации JQuery не запускается, если я не буду выполнять пошаговую отладку через веб-приложение. Как я могу заставить это правильно запускаться из моего onclick вне отладки?

Я пытался запустить его как в отладке, так и вне ее, она работала только в отладке.

HTML, который правильно проходитчерез значение щелчка для функции JS ниже.

<button class="btn btn-primary" onclick="SubmitApplication('@app.JobRef')">Continue With Application</button>

Функция JS, которая вызывается. $ .Post запускается только при отладке, и я не уверен, почему или как это исправить. objApp успешно заполняется из текстовых полей на странице.

function SubmitApplication(jobref) {
    var objApp = {};
    var appID = "";

    objApp.Email = $("#email").val();
    objApp.FirstName = $("#firstname").val();
    objApp.LastName = $("#lastname").val();
    objApp.PhoneNo = $("#phoneno").val();
    objApp.Qualifications = $("#degree").val();
    objApp.DatesNotAvailForInterview = $("#datesnotavail").val();
    objApp.GdprConsent = $("#gdpr").val();
    objApp.CvFilePath = $("#uploadcv").val();
    objApp.ClFilePath = $("#uploadcl").val();
    objApp.FkJobRef = jobref;

    $.post("/Home/SubmitApplication", { objApp: objApp }, function (data) {
        if (data != null) {
            appID = data.appId;
            var modules = document.getElementsByClassName("txtboxModule");
            var results = document.getElementsByClassName("txtboxResult");
            var dates = document.getElementsByClassName("txtboxResultDate");
            var count = modules.length;

            for (i = 0; i < count; i++) {
                objModule = {};

                objModule.ModuleName = modules[i].value;
                objModule.Result = results[i].value;
                objModule.ResultDate = dates[i].value;
                objModule.FkAppId = appID;

                $.post("/Home/SubmitModules", { objModule: objModule }, function (data) {
                })
            }
        }
        else {
            alert("You have already applied for this position!");
            location.href = "../Details/" + jobref;
            return;
        }
    })
}

Предполагается, что метод в контроллере, вызываемый из сообщения, добавляет данные в базу данных, это происходит только в том случае, если я перехожу через JS.

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