我想知道是否可以在 jquery\javascript 中等到重定向完成后再触发回调函数。
我的代码如下所示,一切都很好,直到登录用户的帖子的回调,当验证完成后,页面不幸被重定向,帖子请求触发了成功回调函数,因此我结束了获取“页面重定向..”而不是它应该重定向到的页面。
$(document).ready(function(){
$("#submit").click(function(){
var url = "https://domain/login";
$.ajax({
url: url,
type: "GET",
dataType: "html",
success: onGetFormSuccess,
error: function(data) {
alert('failed.');
}
});
});
function onGetFormSuccess(data) {
var url = "https://domain/login";
var parser = new DOMParser();
doc = parser.parseFromString(data, "text/html");
var inputs = doc.getElementById("formid").getElementsByTagName("input");
var params = new Object();
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].name == "user")
params[inputs[i].name] = $("#username").val();
else if (inputs[i].name == "pass")
params[inputs[i].name] = $("#password").val();
else
params[inputs[i].name] = inputs[i].value;
}
$.ajax({
url: url,
type: "POST",
data: params,
success: onLoginSuccess,
error: function(data) {
alert('failed.');
}
});
}
function onLoginSuccess(data) {
alert(data);
}
});