これは再発/古典的なトピックですが、これまで私を助けてくれたものは見つかりませんでした。 コントローラからマップをレンダリングしようとしています。これはAjaxリクエストの結果であり、Javascript関数 'onSuccess'によって「食べられる」はずです。それはまさにGrails documentationに提供された例として、私には見えますGrails - JSONを使用してコントローラからAjax経由でマップをレンダリング
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
}
:
<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>
ここに私のコントローラである:ここでは
は私のJavascriptをと.gspビューがあります。 しかし、動作しません。ブラウザのコンソールでは、私はg:remoteForm
から
Uncaught ReferenceError: e is not defined
を取得します。
ご提案は大歓迎です。 ありがとうございます。
これはコードまたは質問のタイプミスですか?!= g:remoteForm> –
dbrin
申し訳ありません、投稿を編集して修正しました。これは元のコードではありませんでした。 –