我想将 csv 文件异步上传到后端并在同一页面中显示预览数据,而无需刷新/重新加载页面。所以我想用 AJAX 来做。
我想知道我们如何使用 Ajax 和 Jquery 来做到这一点。我正在使用struts2。struts2 有没有可用的插件?
非常感谢这方面的任何帮助。
查看Struts2-jQuery-Plugin。然后只需这样做:
<s:form action="process-csv">
<s:file name="fileName"/>
<sj:submit targets="csvDiv"/>
</s:form>
<sj:div id="csvDiv"/>
在您的 Actionprocess-csv
中,您应该读取上传的文件,并将其输出,然后它将显示在 div 中id="csvDiv"
。
请尝试一下,如果您还有其他问题,请再次发布。
更新
表格:
<s:form action="process-csv">
<s:file name="fileName"/>
<sj:submit targets="csvDiv"/>
</s:form>
<sj:div id="csvDiv"/>
动作类:
public class ProcessCsv {
private File fileName;//getter + setter
private String content;// getter + setter
public String execute(){
content = parseCsv(fileName);
return SUCCESS;
}
}
您可以使用OpenCsv 之类的库parseCsv()
在您的test.jsp
.
<textarea><s:property value="%{content}"/></textarea>