Javascript将表行推送到数组

Javascript将表行推送到数组,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一个PHP脚本,它生成一个表行字符串,并通过AJAX调用将其返回。此字符串包含tbody标记(12)之间的所有内容 此数据通过AJAX调用传回,以便我可以在success函数中访问它 PHP: $outputArray = Array(); $recordCount = 0; $i = 0; // Loop over our data foreach($objData->data as $r){ $outputArray[$i++] = '<tr data-qid="'.

我有一个PHP脚本,它生成一个表行字符串,并通过AJAX调用将其返回。此字符串包含
tbody
标记(
12
)之间的所有内容

此数据通过AJAX调用传回,以便我可以在success函数中访问它

PHP:

$outputArray = Array();
$recordCount = 0;
$i = 0;

// Loop over our data
foreach($objData->data as $r){

  $outputArray[$i++] = '<tr data-qid="'.$r->identifierQID.'" class="primaryValue ' . searchMarkup($markupData, $r->identifierQID) . '">';

    // Loop over our fields
    foreach($r as $key => $value){

      // Vars
      $fieldID = str_replace('_', '', $key);

      // Don't include our identifier columns
      if(!in_array($fieldID, $ignore)){
        $outputArray[$i++] = '<td data-tableexport-display="always" class="small' . ($exportFields ? (in_array($fieldID, $exportFields) ? ' hidden' : '') : '') . '">' . formatFieldData($fieldID, $value) . '</td>';
      }

    }

    // Notes always come last
    $outputArray[$i++] = '<td data-tableexport-display="always" class="notesTD allowContext hidden"></td>';

  $outputArray[$i++] = '</tr>';
  $recordCount++;

}

// Join our rows array and return it
$end = microtime(true);
$timer = number_format($end - $start, 2);
return array(join("",$outputArray), $recordCount, $timer);`
$outputArray=Array();
$recordCount=0;
$i=0;
//循环查看我们的数据
foreach($objData->数据为$r){
$outputArray[$i++]='';
//环游我们的田野
foreach($r作为$key=>$value){
//瓦尔斯
$fieldID=str_replace(“”,“”,$key);
//不要包括我们的标识符列
if(!in_数组($fieldID,$ignore)){
$outputArray[$i++]=''.formatFieldData($fieldID,$value)。'';
}
}
//笔记总是排在最后
$outputArray[$i++]='';
$outputArray[$i++]='';
$recordCount++;
}
//加入我们的行数组并返回它
$end=微时间(真);
$timer=number_格式($end-$start,2);
返回数组(join(“,$outputArray),$recordCount,$timer)`
我试图将这些数据与名为
clusterize
的插件一起使用,该插件用于处理DOM中的大量数据。它要求数组中的每一行都是它自己的值

示例:
var数据=['…','…',…]

我的问题是,我的输出作为包含所有行的串联字符串返回

我的问题:

$outputArray = Array();
$recordCount = 0;
$i = 0;

// Loop over our data
foreach($objData->data as $r){

  $outputArray[$i++] = '<tr data-qid="'.$r->identifierQID.'" class="primaryValue ' . searchMarkup($markupData, $r->identifierQID) . '">';

    // Loop over our fields
    foreach($r as $key => $value){

      // Vars
      $fieldID = str_replace('_', '', $key);

      // Don't include our identifier columns
      if(!in_array($fieldID, $ignore)){
        $outputArray[$i++] = '<td data-tableexport-display="always" class="small' . ($exportFields ? (in_array($fieldID, $exportFields) ? ' hidden' : '') : '') . '">' . formatFieldData($fieldID, $value) . '</td>';
      }

    }

    // Notes always come last
    $outputArray[$i++] = '<td data-tableexport-display="always" class="notesTD allowContext hidden"></td>';

  $outputArray[$i++] = '</tr>';
  $recordCount++;

}

// Join our rows array and return it
$end = microtime(true);
$timer = number_format($end - $start, 2);
return array(join("",$outputArray), $recordCount, $timer);`

我如何才能将每个
TR
作为其自身的值放在一个数组中,以提供给成功函数?最好在PHP端执行此操作,还是使用javascript将最终字符串分解成数组?

从服务器返回需要的每一行,以简化并避免无用的工作(即先加入,然后拆分)。下面是一个(未经测试的)示例:

$outputArray=Array();
foreach($objData->数据为$r){
$row='';
foreach($r作为$key=>$value){
$fieldID=str_replace(“”,“”,$key);
if(!in_数组($fieldID,$ignore)){
$row.=''.formatFieldData($fieldID,$value)。'';
}
}
$row.='';
$row.='';
$outputArray[]=$row;
}
$end=微时间(真);
$timer=number_格式($end-$start,2);
返回数组($outputArray,count($outputArray),$timer);

为什么最后要在php中加入数组?似乎如果你不这么做,问题就来了solved@aw04-每行都是一个数组值。
tr
td
等。这是一种将字符串连接在一起的方法,而不必将其全部存储为单个变量。如果我删除它,我会得到一个数组,每个行/单元格等都有一个键/值,而不是每行一个