На странице ejs на переднем конце у меня есть функция обработчика ajaxSubmit, подобная этому.Предотвратить возврат на клиентский ajaxSubmitHandler
$('#submitDetails').submit(function() {
$(this).ajaxSubmit({
error: function(xhr) {
alert('Error: ' + xhr.status);
},
success: function(response) {
if (response.responseCode == 1) {
alert("There is an error. Please try again!");
} else {
//do nothing
}
}
});
};
На стороне сервера у меня есть модуль маршрутизации nodejs с методами get и post. Для вышеуказанного нажмите кнопку «Отправить», я нахожу сообщение . Как ниже
route.post('/submit', (req, res, next) => {
if (dataRetrieved == 1 || dataRetrieved == 2) {
return res.json({"responseCode" : dataRetrieved});
} else {
res.render('someOtherPage');
}
Когда приложение работает без какой-либо проблемы с сервером, выполняется блок else. Как вы могли видеть, я хочу отобразить другую страницу внутри блока else и не хочу возвращать res.json в обработчик ajaxSubmit. Это не позволяет мне это делать. Как только он видит res.render, он возвращается к этой функции submitHandler. Есть ли способ предотвратить это?