是否可以在 grails 中进行 ajax 调用时将 json 数据呈现为 javascript 变量?
我正在使用submitToRemote以便从我的 grails 视图对我的 grails 控制器中的操作进行 ajax 调用。该操作返回一个 json 变量/值。我需要将此值分配给一个 javascript 变量,以便在我的网页上进一步使用。这有可能实现吗?任何线索都会有所帮助。
是否可以在 grails 中进行 ajax 调用时将 json 数据呈现为 javascript 变量?
我正在使用submitToRemote以便从我的 grails 视图对我的 grails 控制器中的操作进行 ajax 调用。该操作返回一个 json 变量/值。我需要将此值分配给一个 javascript 变量,以便在我的网页上进一步使用。这有可能实现吗?任何线索都会有所帮助。
您可以使用onSuccess
回调submitToRemote
来读取请求的结果并将它们传递给 javascript 变量。
<script type="text/javascript">
function passResult(result) {
yourVariable = result.responseText
}
</script>
<g:form action="show">
Login: <input name="login" type="text" />
<g:submitToRemote update="updateMe" onSuccess="passResult(result)"/>
</g:form>
<div id="updateMe">this div will be updated with the form submit response</div>
上面的代码未经测试,但应该可以工作。
submitToRemote
具有onSuccess
可用于检索 json 数据的选项。从文档:
onSuccess (可选) - 成功时调用的 JavaScript 函数
在这篇博文中可以看到如何做到这一点的一个例子。