【问题标题】:CakePHP Jquery Ajax Progress Indicator - Update DIVCakePHP Jquery Ajax 进度指示器 - 更新 DIV
【发布时间】:2010-02-20 23:56:23
【问题描述】:

我有一个简单的要求,但是,我渴望就最佳解决方案获得意见。

首先,我在 LAMP 开发服务器上使用 CakePHP 和 JQuery。

该网站使用一个简单的搜索表单,通过 GET 向 /search?term=xxx 提交数据

搜索逻辑实现了对多个第三方 API 的大量耗时调用,目前最多 5 秒。

我需要的是尽可能快地加载页面,然后为最终用户提供响应式反馈。我认为实现显示“请稍候”消息或动画 gif 将是最好的方法。在页面加载/搜索提交时,对 cakePHP URL 执行 Ajax 调用,该 URL 启动密集查询,传递搜索词,并响应布局数据数组。

它应该类似于汽车保险比较网站,聚合来自多个来源的数据并为最终用户提供响应反馈。

这听起来正确吗?谁能提供任何代码示例/网址来巩固我的理解?

谢谢, 保罗

【问题讨论】:

    标签: jquery ajax cakephp html progress


    【解决方案1】:

    好吧,加载图像的事情可以这样完成:

    function()
      {
      ajax_loading_image('.someDivId');
      $.ajax({
        type: "GET",
        url: 'yourUrl',
        data: 'yourGETSubmittedData',
        success: function(msg)
          {
          // do some stuff
          ajax_remove_loading_image('.someDivId');
          }
        });
      }
    
    function ajax_loading_image(div)
      {
      $(div).html('<img src="ajax-loader.gif" alt="loading..."/>');
      }
    
    function ajax_remove_loading_image(div)
      {
      $(div).html('');
      }
    

    【讨论】:

    • 感谢上面的代码,这是一个很好的起点,我现在已经实现了我需要的一切。我已经能够在 CakePHP 中使用 $this->render('viewfilename', 'ajax') 来协助实际的标记和布局。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 2018-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多