所以我之前已经成功地让 AJAX 请求工作,但我总是不得不使用一个表单,然后在提交结束时返回 false,这样它就不会刷新页面。
我最近也刚刚将我的 JavaScript 移动到一个单独的文件中,这导致我的 @ 命令失败。因此,我不知道如何将我的 URL 设置为我的路由?
HTML:
<button id="saveAsDefaultButton">Save as default</button>
Playframework Java 代码:
public static Result saveDefaultPhoneForUser(String handset) {
User currentUser = User.findByName(session("name"));
currentUser.lastControlledHandset = theHandset;
currentUser.save();
return ok();
}
路线:
POST / controllers.Application.saveDefaultPhoneForUser(handset : String)
javascript:
$('#saveAsDefaultButton').click(function(evt) {
$('#errors').hide();
$.ajax({
type : 'POST',
url : "controllers.Application.saveDefaultPhoneForUser",
data : $('#controlledPhone option:selected').text(),
dataType : "text",
success : function(data) {
//setError('Call succedded');
//$('#test1').attr("src", data)
},
error : function(data) {
setError('Make call failed');
}
});
return false;
});
我敢肯定有办法做到这一点,但我只是没有运气找到任何东西。