【问题标题】:Is it possible to render json data into a javascript variable while making an ajax call in grails?是否可以在 grails 中进行 ajax 调用时将 json 数据呈现为 javascript 变量?
【发布时间】:2012-06-19 11:58:38
【问题描述】:

是否可以在 grails 中进行 ajax 调用时将 json 数据渲染到 javascript 变量中?

我正在使用submitToRemote 来从我的grails 视图对我的grails 控制器中的操作进行ajax 调用。该操作返回一个 json 变量/值。我需要将此值分配给一个 javascript 变量,以便在我的网页上进一步使用。这有可能实现吗?任何线索都会有所帮助。

【问题讨论】:

  • 检查submitToRemote 的onsuccess 参数。 Here's 一个例子
  • Sérgio Michels :它工作正常...只需将 'e' 替换为 'data'。我认为 jquery 使用“数据”。请您在下面输入答案,以便我选择它作为正确答案?

标签: ajax grails gsp


【解决方案1】:

submitToRemote 具有可用于检索 json 数据的 onSuccess 选项。来自文档:

onSuccess(可选)- 成功时调用的 JavaScript 函数

如何做到这一点的例子可以在this blog post中看到。

【讨论】:

  • 这对我有用。谢谢塞尔吉奥!只是出于某种原因,“e”对我不起作用,但“data”对我有用!
【解决方案2】:

您可以使用submitToRemoteonSuccess 回调来读取您的请求结果并将它们传递给一个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>

上面的代码未经测试,但应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 2019-08-24
    相关资源
    最近更新 更多