Я знаю, что это повторяющаяся/классическая тема, но я не нашел ничего, что помогло мне до сих пор. Я пытаюсь отобразить карту с моего контроллера. Это результат запроса Ajax и предполагается, что он «съеден» функцией Javascript «onSuccess».Grails - render Карта с контроллера через Ajax с использованием JSON
Вот мой Javascript и вид .gsp:
<g:javascript>
function updateVideoLoad(e) {
var map = eval("("+e.responseText+")") // evaluate the JSON
$('#resultsChecker').html(map.urlAccepted + ' - ' + map.provider + ' - ' + map.videoId + ' - ' + map.videoTag)
}
</g:javascript>
<g:formRemote name="myForm" update="" url="[controller: 'project', action:'addVideo']" onSuccess="updateVideoLoad(e)">
...
</g:formRemote>
Вот мой контроллер:
import grails.converters.JSON
class ProjectController {
def addVideo() {
...
def videoMap = [urlAccepted: videoList[0], provider: videoList[1], videoId: videoList[2], videoTag: videoList[3]]
render videoMap as JSON
}
Он смотрит на меня, точно так, как примера, приведенного в Grails documentation , Однако это не сработает. На консоли браузера, я получаю:
Uncaught ReferenceError: e is not defined
из моего g:remoteForm
.
Любое предложение приветствуется. Благодарим вас за помощь.
Это опечатка в коде или вопросе?! = g: remoteForm> –
dbrin
Извините, я отредактировал сообщение, чтобы исправить его. Это не было в исходном коде. –