js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理

 为了避免发送数据中有特殊字符,发送时用 encodeURIComponent 编码

js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理

(其实这个 if中是直接通过浏览器下载文件的方法,else是向后台传数据的方法)

struts后台Action处理接收到的数据,经过转换后生产一个文件,写回到前台的方法

js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理

接收到数据后首先 url解码

然后经过处理后,生成文件写回前台下载:

知识点包括如何获取项目中的某个目录的真实路径、生成临时文件、
js通过生成临时表单再删除的方式向后台提交数据(模拟ajax的post提交但还要跳转页面不返回数据)以及 struts向前台返回文件下载及防止中文乱码处理

上图最后部分是 对要返回到前台下载的 文件 名称 的防止中文乱码处理,以及 struts如何通过 假跳转页面的方式实现 前台浏览器文件下载。