У меня есть требование, когда мне нужно проверить файл jar и содержимое файла Jar.как вернуть ответ ajax в функции
validation of contents of Jar
файл сделан в моем сервлете, и в ответ я получаю строку из сервлета.
Основываясь на ответе, полученном из сервлета, я проверяю его в функции.
Мой код выглядит следующим образом
function validateSteps(step) {
var appctxpath = document.getElementById("appcontextpath").getAttribute("value");
var isStepValid = true;
var buttonPress = document.getElementById("buttonClick").value;
// validate step 1
if (step == 1) {
var result = true;
if(buttonPress != "P")
{
var valid = $("#formID").validationEngine('validate');
//var vars = $("#formID").serialize();
//alert(valid);
if (valid == true) {
//alert("Hi");
result = true;
} else {
result = false;
$("#formID").validationEngine();
//return false;
}
if(result == true)
{
var result;
var connectorJarFile = document.getElementById("conncetorJar").files[0];
var formdata = new FormData();
formdata.append("conncetorJar", connectorJarFile);
var xhr = new XMLHttpRequest();
xhr.open("POST",appctxpath+"/ajax/AdminIlantusAppAddStepOne", true);
xhr.send(formdata);
xhr.onload = function(e)
{
if (xhr.readyState == 4 && xhr.status == 200)
{
var msg=xhr.responseText;
if(msg == "Invalid Jar File"){
alert("!Invalid jar file");
document.getElementById('errfn').innerHTML="This is Invalid jar file";
return false;
}
else{
alert("valid jar");
document.getElementById('errfn').innerHTML="";
return true;
}
}
};
}
Если сообщение Invalid Jar File
я должен остановить контроль, идущий к следующей странице. за это я держал return false;
в if condition
.
Все еще элемент управления переходит на следующую страницу. что я должен сделать, чтобы решить эту проблему?
Вы проверили, действительно ли верное сообщение действительно возвращено? Появляется ли предупреждение? – Owl
Поскольку ajax по умолчанию асинхронный, он не ожидает ответа на следующую страницу или нет. Затем вы должны реализовать эту логику внутри функции обратного вызова ajax. Но подождите, я не вижу никакой логики, чтобы перейти или перейти на следующую страницу. Вы также должны опубликовать эту соответствующую часть –
@kaktus Спасибо за ответ, Да Показывает предупреждение – Saha