如何在表单提交后刷新Spring Web应用程序中的div?

时间:2017-09-08 22:22:24

标签: jquery spring-boot thymeleaf

我有一个只上传图片的表单,以及一个将该图片存储在文件系统中的Controller。 然后,该控制器返回一个重新加载页面的模型和视图。 然后我有一个img标签从文件系统加载这张图片。谢谢:

<form method="POST" th:action="@{/user}" enctype="multipart/form-data" role="form">
    <input type="file" name="file" onchange="this.form.submit()" />
    <img th:src="@{/user/{pictureNumber}(pictureNumber=${Id})}"/>
</form>

这是返回图片的控制器:

@RequestMapping(value = "/user/{pictureNumber}")
@ResponseBody
public byte[] getImage(@PathVariable(value = "pictureNumber") String userId) throws IOException {
    File directory= new File("..path"+pictureNumber);
    return Files.readAllBytes(directory);
}

刷新页面后,会显示已加载的图片。 一旦图片存储后,我如何在表单提交后, img标签当前要重新加载的div,以便显示图片而不必刷新?

1 个答案:

答案 0 :(得分:1)

您可以尝试在表单提交后重新加载页面:

 <form method="POST" th:action="@{/user}" enctype="multipart/form-data" role="form">
    <input type="file" name="file" onchange="this.form.submit(); location.reload();" />
    <img th:src="@{/user/{pictureNumber}(pictureNumber=${Id})}"/>
</form>