【发布时间】:2017-02-27 05:07:23
【问题描述】:
我有一个控制器,我在其中将值呈现给 GSP 页面:
reply = [status:false, value1:arrayList2, value2: arrayList3,value3: arrayList4,value4: arrayList1] render status: 200, text:(reply as JSON).toString()。
在 AJAX success 函数中,我得到值 like 并尝试将其显示为:
var retrievedValue = JSON.parse(data);
if(retrievedValue.value1.length > 0){
alert("first array value")
var row1 = '<tr>';
var col1 = '';
for(var i=0;i<retrievedValue.value1.length;i++)
col1 += '<td>'+retrievedValue.value1[i]+'</td>';
row1 += '</tr>';
$('#table1').append(row);
}
if(retrievedValue.value2.length > 0){
alert("second array value")
var row2 = '<tr>';
var col2 = '';
for(var i=0;i<retrievedValue.value2.length;i++)
col2 += '<td>'+retrievedValue.value2[i]+'</td>';
row2 += '</tr>';
$('#table1').append(row);
}
if(retrievedValue.value3.length > 0){
alert("third array value")
var row3 = '<tr>';
var col3 = '';
for(var i=0;i<retrievedValue.value3.length;i++)
col3 += '<td>'+retrievedValue.value3[i]+'</td>';
row3 += '</tr>';
$('#table1').append(row);
}
if(retrievedValue.value4.length > 0){
alert("fourth array value")
var row4 = '<tr>';
var col4 = '';
for(var i=0;i<retrievedValue.value4.length;i++)
col4 += '<td>'+retrievedValue.value4[i]+'</td>';
row4 += '</tr>';
$('#table1').append(row);
}
但它没有将任何内容显示为表格。这是我的桌子区域:
<table id ="table1"> </table>
如何将表格中的值列表填充为单独的行?
【问题讨论】:
-
显示您的
arrayList2、arrayList3包含的内容.. -
请务必查看minimal reproducible example 发布代码指南。一半的功能很少足以证明问题。
-
@Guruprasad Rao 它将拥有 0000-00-00-00.00.00.000001
-
@raghulc 当您执行 `alert("Values are: "+data)` 时,您看到实际值了吗?如果是这样,你需要 JSON.parse 吗?因为我怀疑 `var retrievedValue = JSON.parse(data);` 根本不需要。我认为如果您尝试 if(data.value1.length > 0){ 它会起作用。您能否验证它是否有效,如果是这样,您是否会考虑放慢速度并逐步评估/理解开发而不是 bigData 我在所有数据中感到困惑。开始你的小工作。最多这应该是 1 次基本迭代,显然它在 1 中不起作用,在 10 中不起作用,为什么要全部发布
-
@vahid 如果我没有使用 var retrievedValue = JSON.parse(data) 解析 JSON,那么当我尝试获取值时,它会以 undefined alert("success:"+data. value1) 成功未定义,但其中包含值
标签: jquery html css ajax grails