Я пытаюсь вернуть результат от метода действия контроллера к функции JavaScript.Grails - как вернуть переменную из действия контроллера в JavaScript?
Я пытался два пути решения этого:
первая:
метод в контроллере:
def addUser(String name, String id1, String id2) {
return "myValue"
}
JavaScript функция:
function myFunction(userId1, userId2, username) {
var id1 = $(userId1).val();
var id2 = $(userId2).val();
var name = $(username).val();
// <g:remoteFunction action="addUser" params="{name:name,id1:id1,id2:id2}" />
var variable = ${remoteFunction(action:'addUser', params:[name:name,id1:id1,id2:id2])};
alert(variable)
}
Он отображается только «объект Object "
второй:
метод в контроллере:
def addUser(String name, String id1, String id2) {
return [value:"myValue"]
}
функция JavaScript:
function myFunction(userId1, userId2, username) {
var id1 = $(userId1).val();
var id2 = $(userId2).val();
var name = $(username).val();
// <g:remoteFunction action="addUser" params="{name:name,id1:id1,id2:id2}" />
${remoteFunction(action:'addUser', params:[name:name,id1:id1,id2:id2])};
var variable = "${value}";
alert(variable)
}
ничего не отображается.
Я также попытался поместить свою переменную в сеанс, который работал только после обновления страницы. У меня кончились идеи. Что мне не хватает?