我正在使用解析后端。我的服务器上有一个列表,当某个用户提交某些内容时,该列表会增加数据。现在,在我的网站上,我想访问该数据。但我不知道,在给定的时间点,该列表中将存在多少行数据。 (基本上,你可以说我正在制作类似于购物网站的东西,用户在打开我的网站时会得到一个对象列表,除了这个" list"不断变化)。我想要显示所有项目。 我怎样才能做到这一点?
这是我尝试过的: HTML:
<table style="width: 600px; text-align: center;border: 1px solid black;">
<tr>
<th><strong>Name</strong></th>
<th><strong>Score</strong></th>
</tr>
<tr>
<td id="tdn0">-</td>
<td id="tds0">-</td>
</tr>
<tr>
<tr>
<td id="tdn1">-</td>
<td id="tds1">-</td>
</tr>
为了填充这个,我使用javascript / jquery。我获取数据并使用getElementById并更改innerHTML(注意ID是按数字顺序排列的)。但问题是如果我创建20个元素并且服务器返回25个元素,则不显示5个元素,如果服务器返回15个元素,则5个元素用虚线显示。 任何帮助将不胜感激。 谢谢。
EDIT ------- 脚本如下所示:
for(var i=0;i<results.length;i++)
{
var object = results[i];
flag=0;
if(i===0)
{
down[counter]=object.get('UserName');// save username
down_score[counter]=object.get('score'); // save score in user defined array
// alert(down[counter]);
counter++;
continue;
}
else
{
for(var j=i-1;j>=0;j--)
{
if(object.get('UserName')===down[j]){ // check for duplication of data
flag=1;}
}
if(flag!==1)
{
down[counter]=object.get('UserName');
down_score[counter]=object.get('score');
counter++;
}
}
}
for(var k=0; k<21;k++){
document.getElementById('tdn'+k).innerHTML=down[k]; // spit out the results in HTML
document.getElementById('tds'+k).innerHTML=down_score[k];
}
这里,results是服务器返回的对象数组。