在数据表中插入ajax响应

时间:2014-08-06 04:45:51

标签: jquery ajax datatables html-table

我需要在Data表中插入一个AJAX响应数据。我得到了AJAX响应,并且在AJAX成功的时候我需要在数据表中插入响应数据。

 $.ajax({
    type: "POST",
    url: "macrocall.cgi",
    data: { macro:"loadcase_ajax",CGISESSID:$CGISESSID,ph_name:phase_name},
    dataType: 'text',
    success:function (data) 
            {       
                var return_data=data;
                alert("return data"+return_data);
            }
   });

这是返回数据格式。

return data**~93~ARRIAE~BETEA~FRONT_IMPACT~FL 1 - 48 Kmph ~../macro/1176/images/FL1.jpg**

我的HTML看起来像,

<html>
<table cellpadding="0" cellspacing="0" border="1" class="display"
    id="example">
    <thead>
        <tr style="background-color: #336699;">
            <th><font color="#fff">SNO</font></th>
            <th><font color="#fff">TESTG PHASE</font></th>
            <th><font color="#fff">PROJECT NAME</font></th>
            <th><font color="#fff">IMPACT</font></th>
            <th><font color="#fff">LOADCE</font></th>
            <th><font color="#fff">IMAGE</font></th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Response values to be inserted here</td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
        </tr>
    </tbody>
</table>
</html>

请建议如何完成..上表是一个数据表。

2 个答案:

答案 0 :(得分:0)

1 - 首先,尝试将dataType更改为'json'

2 - 在ActionClass中使用了哪个变量名。 example : private ProjectInfo variable_name;

3 - 检查返回的数据格式是否如下所示:

{"variable_name" : ["93", "ARRIAE","BETE","FRONT_IMPACT","FL 1 - 48 kmph","../macro/1176/images/FL1.jpg"]};

4 - 现在将数据附加到您的表格中。

for(i=0;i<data.variable_name.length;i++){ $('<tr>"+data.variable_name[i]+"</tr>').appendTo('table > tbody'); }

答案 1 :(得分:0)

如果您无法从服务器/数据源以更好的格式获取数据,则必须:

  1. 将数据自行解析为可用格式。我首先删除data**前缀和**后缀,然后通过使用~作为分隔符拆分字符串来创建值数组。然后将数据存储在一个数组中。
  2. 循环遍历数据集,为具有相应数据的表行准备HTML。为了额外的功劳,我在循环中添加了一个检查,以查看字符串中的值是否为/image/,表明它是路径而不是简单的值。
  3. 将值插入表格中。
  4. jsFiddle demo