我使用的播放框架2.0.1。我有一个jQuery的弹出式窗体,我必须在服务器端进行验证,并显示验证消息WITHOUT CLOSING弹出。服务器端验证弹出
我试图用java脚本路线作为禅宗任务例子给出的,但我觉得没有例子,使从客户端Ajax调用。
我找不到在游戏框架2.0使用AJAX任何其他例子。
任何帮助表示赞赏。
谢谢。
我使用的播放框架2.0.1。我有一个jQuery的弹出式窗体,我必须在服务器端进行验证,并显示验证消息WITHOUT CLOSING弹出。服务器端验证弹出
我试图用java脚本路线作为禅宗任务例子给出的,但我觉得没有例子,使从客户端Ajax调用。
我找不到在游戏框架2.0使用AJAX任何其他例子。
任何帮助表示赞赏。
谢谢。
在客户端,你可以调用自己的JavaScript功能,将收集所有的表单输入:
$("#myForm").submit(function(evt) {
evt.preventDefault();
$.ajax({
type: "POST",
url: "@routes.MyController.myMethod()",
data: { username: $("#myForm #username").val(), age: $("#myForm #age").val() },
dataType: "json",
success: function(data, textStatus, jqXHR) {
console.log("Success of call");
//Do what you want here
//For example close the jquery opened panel
},
error: function(jqXHR, textStatus, errorThrown) {
console.log("Failure of call");
}
}
return false;
});
在服务器端,你将把传入请求的任何其它的(这是斯卡拉例子,适应它为Java):
def connectWithFB = Action { implicit request =>
Form(tuple("username" -> nonEmptyText, "age" -> nonEmptyText)).bindFromRequest.fold(
errors => {
BadRequest(toJson(Map("status" -> "0", "error" -> "Missing fields or wrong field")))
},
success => {
Ok(toJson(Map("status" -> "1")))
}
)
}
自举的那么容易做到的验证, 为例:
<div class="form-group" style="position:relative;left:20px;">
<label class="sr-only" for="exampleInputEmail2"><strong> Genre</strong>
</label>
<input type="text" name="genre" required />
</div>
所有你需要做的是说,it's需要像
<input type="text" name="genre" required />
干杯
非常感谢你为你的即时响应。你能解释一下如何调用java脚本方法吗?因为我是jquery的新手。我有以下代码。 @ helper.form(动作= routes.Drabble.submit,“ID - > “myForm会”){ @inputText(drabbleForm( “标题”))},即使没有输入必填字段,弹出窗口也会关闭。请帮忙。 –
你应该考虑在不同的StackOverflow线程中分割你的问题。 JavaScript,jQuery,Ajax,Play模板和Play控制器是非常不同的主题。如果你不了解其中的一个问题,就可以在SO上提出一个非常具体的问题。 – iwalktheline
感谢kheraud的回应。 –