书接上文,上午遇到error parsing http request header问题,用ajax传对象可以解决问题,但文件下载只能用location.href,传参数如果有中文又有可能出现问题,所以上午想的办法是如果有中文先进行转码,但这个方法确实不好,下午看到有人写了一个思路,将参数利用js做成表单,用表单提交方法代替location.href,方法还是比较巧妙,比转码好得多,具体代码如下
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18function createFormForExport(url,params) { // 创建Form var form = $('<form></form>'); // 设置属性 form.attr('action', url); form.attr('method', 'post'); for (var item in params) { // 创建Input var formInput = $('<input name="' + item + '" type="hidden" value="' + params[item] + '" />'); // 附加到Form form.append(formInput); } $(document.body).append(form); // 提交表单 form.submit(); form.remove(); }
params是一个js对象,就酱
最后
以上就是谦让高跟鞋最近收集整理的关于用表单代替location.href的全部内容,更多相关用表单代替location内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复