Кажется, что моя функция публикации 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.