Spring MVC上传文件并发送解析后的数据
Spring MVC upload file and send parsed data back
我使用Spring MVC为我的web应用程序。我正在实现文件上传功能。按照教程,我可以通过输入类型为"file"的提交动作将上传的文件发送到服务器。然后我在服务器端解析了上传的xls文件,需要将解析的数据(3个自定义对象列表)发送回相同的表单以显示。我通过ModelAttribute返回数据。
然而,我现在的问题是,在客户端,我需要在我的javascript中使用那些自定义对象列表,但我只能通过jstl标签库检索自定义对象的每个字段,但我不能在我的javascript中获得那些自定义对象,我需要它们用于其他逻辑实现。
然后我尝试了Ajax文件上传插件,因为Ajax调用可以返回JSON响应,对象可以在Javascript中使用。但是不能使插件正常工作。
这个问题我已经纠结了好几天了>.<有人能帮忙吗?在Javascript中使用ModelAttribute的解决方案或Ajax调用解决方案都可以。非常感谢!!>
为什么你不能简单地将模型对象"扁平化"到HTML中,然后使用DOM API从Javascript访问它们?
你说你返回3个自定义对象列表。那么,对于每个列表,您建立一个(隐藏的)HTML表,例如,如果您在ModelAttribute
中有一个Person
对象列表,称为people
:
<table id="people-table">
<c:forEach var="person" items="${people}">
<tr id="${person.id}>
<td class="person-name">${person.name}</td>
<td class="person-age">${person.age}</td>
<td class="person-height">${person.height}</td>
</tr>
</c:forEach>
</table>
现在在您的Javascript中,您遍历people-table
中的行,做任何您需要做的事情-例如使用jQuery:
$("#people-table tr").each(
var personId = $(this).attr("id");
var personName = $(this).find("td.person-name").text();
// etc, etc
// Do something with these as required
);
这可能不是最优雅的解决方案,但它很容易调试至少-你总是可以检查table
与Firebug等,看看数据是否正确,从那里你会知道是否继续调试服务器端或在Javascript。
- 用程序搜索JQuery数据表中的文本
- 要求输入在数据列表中
- 正在将数据主题添加到所有项目
- 函数参数中的数据与指定变量之间的任何性能差异
- 在VanillaJS中模拟模型双向数据绑定
- CSS-如何定位内容数据标题
- 使用电话间隙在Android应用程序中显示SQL Lite的数据
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 序列化数据属性中对象的最可靠方法
- 如何将JSON数据导入我的ejs模板
- 不显示带有本地json文件数据的谷歌地图脚本
- 如何将json数据显示为html
- 画布数据到图像
- 使用jquery将mysql数据获取到新的表行中
- 使用html中的外部javascript进行数据验证
- Javascript/JQuery处理并发/异步调用和数据竞争
- 如何同步声明JS对象,然后用依赖于并发操作的数据编辑对象的属性
- 并发jQuery ajax请求中的重复数据
- 如果并发调用请求仍在加载数据,如何等待async angularJS调用完成
- 来自 API 的 2 个并发请求数据被混淆