submit提交后,接收返回信息
随手记
一:
form表单请求,submit后,获取后台返回的数据:
设置隐藏的iframe:
<iframe name ="hframe" id="hframe" style=" display: none" ></iframe >
js检测iframe的加载事件,获取返回的数据
$("#hframe").load(function(){
var data = $(this).contents().find("body").text(); //获取到的是json的字符串
if (data>0){
alert("操作成功!");
window.location.reload();
}else if (data==-100){
alert("尚未登陆!");
window.location.href="index.html";
}else
alert("上传失败!");
})
二:
form表单提交后,下载文件,需要检测文件下载完毕,然后进行某些操作
支持ie
function download() {
var url = "/xx/xxx/xxx?a=b";
var xhr = new XMLHttpRequest();
xhr.open('POST', url, true);
xhr.responseType = "blob";
xhr.onload = function () {
// 请求完成
if (this.status === 200) {
var blob = this.response;
//判断是否是IE浏览器,是的话返回true
if (window.navigator.msSaveBlob) {
try {
window.navigator.msSaveBlob(blob, 'xxx.xlsx');
} catch (e) {
console.log(e);
}
} else {
var reader = new FileReader();
reader.readAsDataURL(blob);
reader.onload = function (e) {
var a = document.createElement('a');
a.download = 'docDeliveryMagExport.xlsx';
a.href = e.target.result;
$("body").append(a);
a.click();
$(a).remove();
}
}
//自定义请求结束的操作
}else{
//自定义请求结束的操作
}
};
// 发送ajax请求
xhr.send()
}
浙公网安备 33010602011771号