我有连续的ajax调用,我如何用返回的数据构造一个表
i have continuous ajax call how can i construct a table with the returned data
我在一个情况下,我从server_side
在每个1 minute
我的数据
问题是我如何用返回的数据构造一个表?
我正在尝试这样做,但不工作。
<div id="table"></div> <!-- my html -->
var something = "abc";
function callEveryMin(){
$.ajax({
url:"test.php",
type:"POST",
dataType:"json",
data:{something:something},
async: false,
success: function(data){
var array = data.list;
console.log(array);
var table = '<table><tr><th> list value </th></tr>';
for(var i = 0; i<array.length;i++)
{
table += '<tr><td>'+array[i]+'</td></tr>';
}
table +='</table>';
$('#table').append(table);
}
});
}
// call the above function every minute
setTimeout(callEveryMin,60000);
(test.php)
echo json_encode(array("list" => ['a','b','c'])); // first run
,第二次像这样运行
echo json_encode(array("list" => ['e','f','g'])); // second run
so on ......
我的问题是如何在每个sucessive ajax call
上附加新的<td>...</td>
please help me thanks in advance
试试这个
<div id="table"></div> <!-- my html -->
var something = "abc";
function callEveryMin(){
$.ajax({
url:"test.php",
type:"POST",
dataType:"json",
data:{something:something},
async: false,
success: function(data){
var array = data.list;
console.log(array);
var table = ($('#table').html() == '')?'<table><tr><th> list value </th> </tr>':'';//if #table don't have a data inside it then add this else add empty
for(var i = 0; i<array.length;i++)
{
table += '<tr><td>'+array[i]+' </td></tr> ';
}
table +=($('#table').html() == '')?'</table>':'';//if #table don't have a data inside it then add this else add empty
$('#table').append(table);
}
});
}
// call the above function every minute
setTimeout(callEveryMin,60000);
试试这样写:
var something = "abc";
var firstCall = false;
var table = '';
function callEveryMin(){
$.ajax({
url:"test.php",
type:"POST",
dataType:"json",
data:{something:something},
async: false,
success: function(data){
var array = data.list;
console.log(array);
if(!firstCall){
table += '<table><tr><th> list value </th></tr>';
firstCall = true;
}
for(var i = 0; i<array.length;i++)
{
table += '<tr><td>'+array[i]+'</td></tr>';
}
table +='</table>';
$('#table').append(table);
}
});
}
假设您的ajax数据只发送刷新的值,而不是旧的值。
相关文章:
- 获取最后一个返回值
- 使用谷歌地图:一个返回undefined的自定义javascript函数
- eval(“{}”) vs eval (“x={}”),一个返回 undefined,而另一个返回 {}
- 如何使用 jQuery 创建一个返回 SQL 结果集的函数
- JavaScriptAJAX调用一个返回XML的PHP
- 在什么情况下,您会使用一个返回另一个函数(Javascript)的函数
- 如何创建一个返回等待EventEmitter的promise的函数
- Angularjs模拟一个返回$http承诺的函数
- 如何编写一个返回单个值的java脚本函数,并将返回的值分配给我们想要的任何变量
- Jasmine-测试一个返回localStorage项的服务
- 创建一个返回函数
- 给定子域中的cookie,您可以编写一个返回代理服务器主机名的javascript函数吗
- 在Javascript中给Number添加一个返回变量
- 如何在angularjs中编写一个返回承诺的异步方法
- HTML4和HTML5 -如果没有导航,我怎么知道是否有一个“返回”状态
- 如何在JavaScript中创建一个返回本地文本文件值的函数?
- 如何声明一个javascript变量并将其值赋给一个返回布尔值的php文件
- 如何在异步测试中测试一个返回承诺的存根
- 从php传递一个返回值给js
- 输入一个返回的可观察对象