【问题标题】:Grails formRemoteGrails formRemote
【发布时间】:2012-04-27 08:26:03
【问题描述】:

我有 DateFrom 和 DateTo 字段。我想将这些数据提交给执行一些业务逻辑的操作,但原始 GSP 没有任何变化,也没有任何更新。我该如何管理?我试过这个:

<g:formRemote name="formName" url="[action: 'myAction']">

一切都很好,但我的操作尝试渲染 myAction.jsp。

【问题讨论】:

    标签: ajax grails form-submit


    【解决方案1】:

    This 是了解其工作原理的好地方。

    基本上你还需要指定什么控制器:

    <g:formRemote name="formName" update="updateMe" url="[controller: 'controller', action:'myAction']">
    

    “updateMe”是 html 对象的 id,最好是 div,您希望在提交后更改(但这不是强制性的)。它还使用 actionName.gsp 来“提供”答案,这就是您需要创建此页面的原因。

    远程表单一开始有点棘手,但是一旦掌握了它就会超级简单!

    【讨论】:

    • 感谢您的快速答复。但正如我所说,我不想转到另一页。我只想从 GSP 调用一个方法/操作,它将执行一些不会更改页面的业务逻辑。我需要留在那个页面上。它不需要是 formRemote 解决方案。有什么建议吗?
    • 我不太了解细节,但 Grails 似乎需要一个相应的 gsp 页面来执行您调用的操作。您可以拥有该页面,但我想将其留空(可能不是最佳做法)。
    【解决方案2】:

    我就是这样做的:

    普惠制:

    <g:formRemote name="formName" update="updateMe" url="[controller: 'controller', action:'myAction']">
    <div id="updateMe">
        <g:render template="updateTemplate"/>
    </div>
    

    行动:

    ...
    render template:"updateTemplate"
    

    updateTemplate 和 updateMe div 都是空的。

    如果您有更好的解决方案,请告诉我。

    【讨论】:

      【解决方案3】:

      你可以使用remoteFunction

      【讨论】:

        【解决方案4】:

        您需要在表单中编写提交按钮,然后它会触发操作并将一些更改显示到 div 中..

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-05-07
          • 1970-01-01
          • 2016-03-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多