gpt4 book ai didi

jquery - Grails动态更新模板 View 而无需Ajax

转载 作者:行者123 更新时间:2023-12-02 16:02:29 25 4
gpt4 key购买 nike

我正在尝试通过GSP模板通知用户任务的进度(显示在叠加层中)

用户提交数据,然后 Controller 调用服务以完成任务。在此过程中,我还有另一项服务,可以完成完成百分比计算,并将值返回给函数(如下)。根据任务的大小,第一个服务可以多次调用此计算服务。

    def progress(progressData) {

def statusToView = progressData

[statusToView:statusToView]
}

我不认为我可以使用Ajax remoteFunction调用,因为我不会将属性“progressData”从GSP模板传递给 Controller ​​-这会导致缺少属性的错误。

我要做的只是在更新时向用户显示百分比(statusToView)值,并且在该过程完成后,从任务开始的功能将重定向到通知用户作业已完成的页面。

模板代码只是变量值:
     ${statusToView}

最佳答案

有两种可能的解决方案:

  • 您可以启动计时器并向服务器进行AJAX调用以获取最新更新。
  • 您可以创建WebSocket。 WebSocket是双向API,浏览器和服务器可以在其中随时发送消息。消息到达时,将通知两端的回调。

  • WebSocket API将允许您的服务在发生更新时将更新推送到浏览器。

    下一个问题是模板。在这种情况下,您不能使用普通模板。我的建议是编写一个带有 <div id="updates">Starting...</div>的模板。然后,在JavaScript回调中,可以按ID定位此元素,并将内容替换为来自服务器的最新消息。

    关于jquery - Grails动态更新模板 View 而无需Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29144960/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com