Play 2.x: cómo hacer una solicitud AJAX con un botón común
Así que he conseguido con éxito solicitudes de ajax antes, pero siempre he tenido que usar un formulario, y al final del envío devuelve false para que no se actualice la página.
También acabo de mover recientemente mi javascript a un archivo separado, esto ha provocado que mis comandos @ fallen. ¿Por esto no sé cómo configurar mi url para mi ruta?
HTML:
<button id="saveAsDefaultButton">Save as default</button>
Código Java de Playframework:
public static Result saveDefaultPhoneForUser(String handset) {
User currentUser = User.findByName(session("name"));
currentUser.lastControlledHandset = theHandset;
currentUser.save();
return ok();
}
rutas:
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;
});
Estoy seguro de que hay una manera de hacerlo. No tengo suerte en encontrar nada. Cualquier ayuda muy apreciada.