在前端开发中经常使用到ajax post请求后台数据来进行操作,但是有时候请求类似于excel文件下载或下载其他文件,这个时候ajax返回则是请求到的源码。这当然不是我们想要的,我们需要触发浏览器下载操作。
ajax函数的返回类型只有xml、text、json、html等类型,没有“流”类型。
var form=$("<form>"); form.attr("style","display:none"); form.attr("target",""); form.attr("method","post"); form.attr("action","请求地址"); var input1=$("<input>"); input1.attr("type","hidden"); input1.attr("name","ip"); input1.attr("value",ip); form.append(input1); var input2=$("<input>"); input2.attr("type","hidden"); input2.attr("name","ip_content"); input2.attr("value",ip_content); form.append(input2); var input3=$("<input>"); input3.attr("type","hidden"); input3.attr("name","ip_type"); input3.attr("value",ip_type); form.append(input3); var input4=$("<input>"); input4.attr("type","hidden"); input4.attr("name","ip_area"); input4.attr("value",ip_area); form.append(input4); $("body").append(form); form.submit();
这样我们点击方法请求时候也不会刷新页面而触发下载。
关键字词: