【问题标题】:DataTable with JS Source带有 JS 源的数据表
【发布时间】:2014-06-17 21:54:20
【问题描述】:

我正在尝试使用 javascript 使用 Sage Sdata 生成一些数据,然后使用 datatables 插件处理该数据,但出现错误:

DataTables 警告:表 id=example - 请求第 0 行的未知参数“1”。有关此错误的详细信息,请参阅http://datatables.net/tn/4

if(aNode2)
{
    resultTextData += '[';
    resultTextData += "'" + aNode1.nodeValue + "'";
    resultTextData += ',';
    resultTextData += "'" +  aNode2.nodeValue + "'";
    resultTextData += ',';
    resultTextData += "'" + aNode3.nodeValue + "'";
    resultTextData += ']';
    resultTextData += ',';
}

var dataSet =   resultTextData ;

console.log(dataSet);

$('#example').dataTable({
    "data": dataSet,
    "aoColumns": [
        { "aDataSort": [ 0, 1 ] },
        { "aDataSort": [ 1, 0 ] },
        { "aDataSort": [ 2, 3 ] }
    ]

});

【问题讨论】:

    标签: javascript datatables opayo sdata


    【解决方案1】:

    data 选项不接受字符串输入。见https://datatables.net/reference/option/data

    【讨论】:

      【解决方案2】:

      DataTables 支持从 json 编码的字符串加载。 这是将 XML 结果转换为数组的示例。

      function FormatDataByIolist($data,$IOlist) {
          $returnAray = array();
          $RecordCount = count($data);
          for($i = 0; $i < $RecordCount; $i++) { 
              $tmpSingleRow = array();
              foreach($IOlist as $colName) {
                  $columVal = (string)$data[$i]->$colName;
                  $tmpSingleRow[$colName] = $columVal;
              }
              array_push($returnAray,$tmpSingleRow);
              unset($tmpSingleRow);
          }
          return $returnAray;
      }
      

      之后需要将数组转换为DataTable可以理解的json_encoded字符串。

      $formatted = '{ "data": '.json_encode($returnAray).'}';
      

      在后端编写后,您需要在数据表定义中添加以下行

      "ajax": "your.php?action=getJson"
      

      your.php?action=getJson 方法应该是 GET 并且应该返回格式化的 json-string(如图所示)。

      我想,这个存储库将帮助您使用 SData。 (它是使用 SData 的模型) https://github.com/AramKocharyan/Sage-SData

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-06-28
        • 2021-10-07
        • 1970-01-01
        • 2014-02-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多