相关疑难解决方法(0)

Rails 3等效于periodic_call_remote

似乎periodically_call_remote在Rails 3中已弃用,任何想法如何实现相同的功能?

ruby-on-rails ruby-on-rails-3

22
推荐指数
2
解决办法
1万
查看次数

使用大量 HTML 渲染页面

我正在创建一个包含大量 HTML(数千个 div 元素)的网站。没有真正的方法可以摆脱所有这些 div 元素,并且它使站点加载非常缓慢(7-12 秒)。我试过在网站上放置缓存,但它没有帮助,因为网站仍然必须呈现所有这些 div 元素。

更具体地说,它有 140 个下拉列表,每个包含 100-800 个 div 元素,它们需要很长时间才能显示。

我的想法是在页面加载后呈现下拉列表中的 div 元素,但我不知道该怎么做?

在页面加载后呈现部分部分的最简单方法是什么?顺便说一句,我正在使用 Rails 4。

关于如何处理大量 HTML 的任何其他建议?

html css ruby ruby-on-rails ruby-on-rails-4

6
推荐指数
1
解决办法
2406
查看次数

jQuery Ajax/.each回调,在ajax完成之前接下来的'each'触发

嗨,当我提交表单时,会调用以下Javascript.它首先从文本区域中分割出一堆url,然后:

1)为每个网址添加一个表格行,并在最后一列("状态"列)中显示"未启动".
2)再次循环遍历每个url,首先关闭它进行ajax调用以检查状态(status.php),该状态将返回0-100的百分比
.3)在同一循环中,它通过ajax启动实际进程(process.php),当进程完成时(记住连续状态更新),它将在状态列中显示"已完成"并退出auto_refresh.
4)然后它应该转到下一个'each'并为下一个url做同样的事情.

function formSubmit(){

    var lines = $('#urls').val().split('\n');

    $.each(lines, function(key, value) {
        $('#dlTable tr:last').after('<tr><td>'+value+'</td><td>Not Started</td></tr>');
    });

    $.each(lines, function(key, value) {

        var auto_refresh = setInterval( function () {
            $.ajax({
              url: 'status.php',
              success: function(data) {
            $('#dlTable').find("tr").eq(key+1).children().last().replaceWith("<td>"+data+"</td>");
              }
            });
        }, 1000);

        $.ajax({
          url: 'process.php?id='+value,
          success: function(msg) {
        clearInterval(auto_refresh);
        $('#dlTable').find("tr").eq(key+1).children().last().replaceWith("<td>completed rip</td>");
          }
        });

    });

}
Run Code Online (Sandbox Code Playgroud)

javascript ajax each jquery asynchronous

5
推荐指数
2
解决办法
5348
查看次数