Java 如何在play framework 2.1中使用ajax*
我正在使用play framework 2.1.2。我想在play框架中使用Ajax 我在干什么?我上传了多个文件,我希望如果用户没有选择上传文件,那么我希望一些消息像“你没有选择任何文件”一样上传,如果用户选择上传文件并点击上传,我希望一些消息像文件已经上传 我的看法是: 以及获取数据 现在当用户点击上传按钮时,若用户选择上传文件,那个么在文件上传之后,我想打印信息文件已经上传,若用户并没有选择文件,那个么我想显示信息,选择一个文件 我想发送我将在控制器部分的文件处理后发送的消息数据。在控制器部分之后,我将得到什么消息,我想发送给那个Ajax 控制器部分为: 我检查了一些代码,但没有得到足够的解决方案Java 如何在play framework 2.1中使用ajax*,java,ajax,json,playframework,playframework-2.1,Java,Ajax,Json,Playframework,Playframework 2.1,我正在使用play framework 2.1.2。我想在play框架中使用Ajax 我在干什么?我上传了多个文件,我希望如果用户没有选择上传文件,那么我希望一些消息像“你没有选择任何文件”一样上传,如果用户选择上传文件并点击上传,我希望一些消息像文件已经上传 我的看法是: 以及获取数据 现在当用户点击上传按钮时,若用户选择上传文件,那个么在文件上传之后,我想打印信息文件已经上传,若用户并没有选择文件,那个么我想显示信息,选择一个文件 我想发送我将在控制器部分的文件处理后发送的消息数据。在控制
让我了解一下ajax。几周前,我使用ajax实现了上传文件,并使用了。 我可能会发布我的解决方案,我希望你会满意。此示例用于简单的1文件上载,但可以扩展 剧本 看法 其中@d是您的视图参数 控制器 在您的代码中,您可以使用返回上传到客户端响应的文件
可以找到完整的源代码,我仍在阅读所有这些,但您可能会发现一些有用的东西
@form(action = routes.upload.up, 'enctype -> "multipart/form-data",'_id->"he") {
<input type="file" name="file" accept="application/pdf" multiple="multiple"><br/>
<input type="submit" id="if" value="upload and extract">
}
Http.MultipartFormData body = request().body().asMultipartFormData();
List<FilePart> resourceFiles = body.getFiles();
if (!resourceFiles.isEmpty()) {
for (FilePart upload : resourceFiles) {
String targetPath = "/home/rahul/Documents/upload/"
+ upload.getFilename();
upload.getFile().renameTo(new File(targetPath));
}
return ok("File uploaded "); //i want to print this result as a message
} else {
return forbidden();
}
}
<script src="@routes.Assets.at("javascripts/jquery-file-upload/jquery.iframe-transport.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/jquery-file-upload/vendor/jquery.ui.widget.js")" type="text/javascript"></script>
<script src="@routes.Assets.at("javascripts/jquery-file-upload/jquery.fileupload.js")" type="text/javascript"></script>
<input type="file" id="@d" name="@d" data-url="@code.routes.Ext.upload()" />
<script type="text/javascript">
$(document).ready(function () {
$('#@d').fileupload({
replaceFileInput: true,
done: function (e, data) {
//Here you got server response.
console.log(data);
var d = data.result;
alert(d);
$('#img1').attr("src",d);
}
});
});
</script>