Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript中使用数组成功调用ajax后填充表_Javascript_Ajax - Fatal编程技术网

在javascript中使用数组成功调用ajax后填充表

在javascript中使用数组成功调用ajax后填充表,javascript,ajax,Javascript,Ajax,我试图用成功的ajax调用的结果填充一个表。我在这里处理多个端点 后端(PHP): 后端返回一个数组 Array ( [0] => Array ( [eid] => 5060529 [uid] => 494 [created] => 2020-11-10T14:23:33.903 [persnr] => 001354 [contractnr] => V-00019

我试图用成功的ajax调用的结果填充一个表。我在这里处理多个端点

后端(PHP):

后端返回一个数组

Array ( 
    [0] => Array ( 
       [eid] => 5060529 
       [uid] => 494 
       [created] => 2020-11-10T14:23:33.903 
       [persnr] => 001354 
       [contractnr] => V-00019 
       [agentnr] => OL-010 
       [location] => 1 
       [client] => 1015 
       [validfrom] => 2020-12-01T00:00:00 
       [validto] => 2020-12-31T00:00:00 
       [isborrowed] => 1 
       [calweek] => 
       [year] => 
    )
   [n] => Array(...)
)
前端呼叫:

结果
打印到控制台时,我看到正确的值本身

$("#contractDetailBtn").on('click', function(){
  let datefrom = $('input#datefrom').val();
  let dateto = $('input#dateto').val();
  let client = $('input#client').val();

  let link = `/backend/lnk?datefrom=${datefrom}&dateto=${dateto}&client=${client}`;
  console.log(link);

  $.ajax({
    type: 'GET',
    datatype: 'html',
    url: link,

    success: function(result){
      var table = $("#ajaxpopulate tbody");

      console.log(result);
      
    }
  });
});
我尝试循环遍历结果值,并使用以下方法填充表格:

$.each(result, function(i, e){
  table.append("<tr><td>"+e.eid+"</td><td>"+e.uid+"</td><td>"+e.created+"</td></tr>");
});
$。每个(结果、函数(即){
table.append(“+e.eid+”“+e.uid+”“+e.created+”);
});
使用json应该可以工作。因为我得到了一个数组,所以我正在以我需要的方式努力获取格式。在后端使用
json\u encode()
时,我得到了一个看起来是json的转义返回。我想知道,我怎样才能以一种我可以继续工作的方式得到结果


任何帮助都将不胜感激。

我是这样做的。希望这是有帮助的

$.ajax({
    url: '/your_api',
    type: 'get',
    success: function (response) {         
      var table_data = '';
      $('#your_table_id').empty();

      for(var i = 0; i<response.length;i++) {
       table_data += '<tr>';
       table_data += '<td>' + i + '</td>';
       table_data += '<td class="text-wrap">' + response[i].firstName + " " + response[i].lastName + '</a></td>'
       table_data += '</tr>'; 
      }

      $('#your_table_id').append(table_data);
    }
  });
$.ajax({
url:“/your_api”,
键入:“get”,
成功:功能(响应){
var表_数据=“”;
$(“#您的_表_id”).empty();

对于PHP后端的(var i=0;i,我建议使用json_encode

像这样:

`
$result =  array( 
[0] => Array ( 
   [eid] => 5060529 
   [uid] => 494 
   [created] => 2020-11-10T14:23:33.903 
   [persnr] => 001354 
   [contractnr] => V-00019 
   [agentnr] => OL-010 
   [location] => 1 
   [client] => 1015 
   [validfrom] => 2020-12-01T00:00:00 
   [validto] => 2020-12-31T00:00:00 
   [isborrowed] => 1 
   [calweek] => 
   [year] => 
    )
   [n] => Array(...)
    );

   echo  json_encode("data" => $result);

 `
然后从JavaScript前端获得它,如下所示:

   success: function(result){
     var data = JSON.parse(result);
     // OR
     var data = JSON.parse(result.data);
     var table = $("#ajaxpopulate tbody");
      // then
      console.log(data.data);
     }
   success: function(result){
     var data = JSON.parse(result);
     // OR
     var data = JSON.parse(result.data);
     var table = $("#ajaxpopulate tbody");
      // then
      console.log(data.data);
     }