После перехода по странице все запущенные сценарии останавливаются и вызовы AJAX отменяются.Если вы хотите, чтобы AJAX-вызов завершался, вам нужно отложить навигацию до его завершения.<button>
, вложенный в элемент <a>
, не будет работать для этого.
Если это вариант, я бы предложил поместить вызов href в функцию AJAX и удалить тег.Если вам нужен URL-адрес, заполненный jsp, поместите его в скрытое поле.
Примерно так (с использованием jQuery):
<button ... onClick="ajaxSyncRequest()">...</button>
<input type="hidden" id="myNextUrl" value="${pageContext.request.contextPath}/DepartmentUser/departmentUserLoginJnlp?userId=${userId}&var=sign&siteName=${siteName}"/>
<script>
function ajaxSyncRequest() {
$.ajax({
...
onSuccess: function () {
window.location.href = $("#myNextUrl").val();
}
});
}
</script>