Html 从JSON输入添加一个表行

Html 从JSON输入添加一个表行,html,json,ajax,Html,Json,Ajax,我试图使用AJAX从JSON输入向HTML表中添加一行。我只想添加特定的列。我能够让桌子展示;但是,不会添加行 请参阅下面的HTML和AJAX(以及返回的JSON) HTML: 出口 活动名称 开始日期 结束日期 AJAX(使用JSON): 功能e1ActivitySelect(){ var dataToBeSent={ ssAccountLevel:sessionStorage.getItem('ssAccountLevel'), ssAccountID:sessionStorage.ge

我试图使用AJAX从JSON输入向HTML表中添加一行。我只想添加特定的列。我能够让桌子展示;但是,不会添加行

请参阅下面的HTML和AJAX(以及返回的JSON)

HTML:


出口

活动名称 开始日期 结束日期
AJAX(使用JSON):

功能e1ActivitySelect(){
var dataToBeSent={
ssAccountLevel:sessionStorage.getItem('ssAccountLevel'),
ssAccountID:sessionStorage.getItem('ssAccountID'),
ssArchived:sessionStorage.getItem('ssArchived'),
};
$.ajax({
url:“E1ActivitySelectView”,
数据:dataToBeSent,
类型:“POST”,
缓存:false
})
.fail(函数(jqXHR、textStatus、errorshown){
$('#ajaxGetUserServletResponse').text('获取活动信息时出错');
})
.完成(功能(响应JSON1A){
数据类型:“json”;
//警报(JSON.stringify(responseJson1a));
//[{“adId”:“2”,“grpId”:“2”,“adActivityID”:“2”,“adActivityName”:“参观莱德消防局”,“adStartDate”:“2017-05-24”,“adEndDate”:“2017-05-24”}]
对于(i=0;i

您没有以正确的方式追加表行

当您有多行要追加时,您需要创建多行标记并像这样追加数据

HTML:

  <table id="example" class="display" cellspacing="0" width="100%">
     <thead>
        <tr>
          <th>Activity Name</th>
          <th>Start Date</th>
          <th>End Date</th>
        </tr>
     </thead>
     <tbody id="mytablebody">

     </tbody>
  </table>

活动名称
开始日期
结束日期
Javascript:

function e1ActivitySelect() {
    var dataToBeSent  = {
        ssAccountLevel : sessionStorage.getItem('ssAccountLevel'),
        ssAccountID : sessionStorage.getItem('ssAccountID'),
        ssArchived : sessionStorage.getItem('ssArchived'),
    };

    $.ajax({
        url: "E1ActivitySelectView",
        data : dataToBeSent,
        type: "POST",
        cache: false
    })
    .fail (function(jqXHR, textStatus, errorThrown) {
         $('#ajaxGetUserServletResponse').text('An error occured getting the Activity 
           information.');
    })
    .done(function(responseJson1a) {
        var tablebody = "";
        try{
           for (i=0; i < responseJson1a.length; i++) {
               tablebody += "<tr><td>"+responseJson1a[i].adActivityName+"</td><td>"++responseJson1a[i].adStartDate+"</td><td>"++responseJson1a[i].adEndDate+"</td></tr>";
           }
           $("#mytablebody").empty();
           $("#mytablebody").append(tablebody);
        }
        catch(e){
           console.log(e);
        }
    });
}
功能e1ActivitySelect(){
var dataToBeSent={
ssAccountLevel:sessionStorage.getItem('ssAccountLevel'),
ssAccountID:sessionStorage.getItem('ssAccountID'),
ssArchived:sessionStorage.getItem('ssArchived'),
};
$.ajax({
url:“E1ActivitySelectView”,
数据:dataToBeSent,
类型:“POST”,
缓存:false
})
.fail(函数(jqXHR、textStatus、errorshown){
$('#ajaxGetUserServletResponse').text('获取活动时出错
资料(");;
})
.完成(功能(响应JSON1A){
var tablebody=“”;
试一试{
对于(i=0;i
表格行是
tr
,而不是
td
。您的
.done
回调有语法错误。您好,涌泉,您说的表行是tr而不是td是正确的。但是,我只是根据html更新行上的特定表数据单元,而不是一次更新整行。请问语法错误是什么?
  <table id="example" class="display" cellspacing="0" width="100%">
     <thead>
        <tr>
          <th>Activity Name</th>
          <th>Start Date</th>
          <th>End Date</th>
        </tr>
     </thead>
     <tbody id="mytablebody">

     </tbody>
  </table>
function e1ActivitySelect() {
    var dataToBeSent  = {
        ssAccountLevel : sessionStorage.getItem('ssAccountLevel'),
        ssAccountID : sessionStorage.getItem('ssAccountID'),
        ssArchived : sessionStorage.getItem('ssArchived'),
    };

    $.ajax({
        url: "E1ActivitySelectView",
        data : dataToBeSent,
        type: "POST",
        cache: false
    })
    .fail (function(jqXHR, textStatus, errorThrown) {
         $('#ajaxGetUserServletResponse').text('An error occured getting the Activity 
           information.');
    })
    .done(function(responseJson1a) {
        var tablebody = "";
        try{
           for (i=0; i < responseJson1a.length; i++) {
               tablebody += "<tr><td>"+responseJson1a[i].adActivityName+"</td><td>"++responseJson1a[i].adStartDate+"</td><td>"++responseJson1a[i].adEndDate+"</td></tr>";
           }
           $("#mytablebody").empty();
           $("#mytablebody").append(tablebody);
        }
        catch(e){
           console.log(e);
        }
    });
}