使用jquery + javascript显示客户端文件的输出

时间:2010-06-13 01:59:42

标签: jquery ajax django

在我的视图函数中编写了一些代码: 此代码从服务器读取文件。将它存储在列表中。通过客户端 def showfiledata(请求):

f = open("/home/tazim/webexample/test.txt")          
   list = f.readlines()       
   return_dict = {'list':list}       
   json = simplejson.dumps(list)       
   return HttpResponse(json,mimetype="application/json")

在客户端,$ .ajax回调函数接收此行列表。

现在,我的问题是。我必须在textarea中显示这些行。但是这些行不应该立刻显示出来。每行应在textarea中附加一些延迟。 (根据我的知识,需要使用setInterval)。我也在模板中使用jquery。

使用的服务器是Django。 请提供一些解决方案,因为在一些示例代码中将非常有帮助。

1 个答案:

答案 0 :(得分:0)

所以,看起来你有一个来自服务器的行列表,我假设它将序列化到你正在使用的库中的JavaScript数组。如果是这样,那么你可以使用setTimeout从数组中弹出线条(对于大多数动画来说,这比setInterval更好)。

所以,像这样:

// assuming some array named 'lines' holds your lines from the server
function appendLine(){
    var currentValue = $('mytextarea').val();
    var nextLine = lines.shift();
    $('mytextarea').val(currentValue+nextLine);
    if(lines.length > 0)
        setTimeout("appendLine",5000);
}

window.setTimeout("appendLine",5000);  

可能不是最有效的方法,但这就是要点。