2017-05-18 9 views
1

を使用してHTMLリンクを生成する私は、HTMLのテーブルだ:のJavascriptのDataTableをJSONデータに機能をレンダリング

<table id="dattable" class="table table-striped table-bordered hover" cellspacing="0" > 
    <thead> 
     <tr> 
      <th>Name</th> 
      <th>Industry</th> 
      <th>Cost</th> 
     </tr> 
    </thead> 
    <tbody> 
    </tbody> 
</table> 

をし、それがJSONデータが移入されます。 render関数を使用して、name列の項目にidフィールドを使用してHTMLリンクを作成したいが、それは機能しません。

var data2 =[ 
    { 
     "id": "0", 
     "name":  "Jack Spicer", 
     "industry__name": "System Architect", 
     "cost":  "$3,120", 
    }, 
    { 
     "id":"1", 
     "name":  "Sean Spice", 
     "industry__name": "Motormouth", 
     "cost":  "-$5,300", 
    } 
]; 

$(document).ready(function() { 
    var table = $('#dattable').DataTable({ 
     data: data, 
     columns: [ 
      { data: 'name', "render": "<a href =" + [, ].id +">"+[, ].name+"</a>"}, //render function 
      { data: 'industry__name' }, 
      { data: 'cost' } 
     ], 


    }); 
}); 

答えて

1

コードに基づいて、必要なカスタムテキストを生成する列の定義を変更する必要があると思います。また、レンダ機能バージョンを使用するように変更しました。

var data2 = [{ 
    "id": "0", 
    "name": "Jack Spicer", 
    "industry__name": "System Architect", 
    "cost": "$3,120", 
}, { 
    "id": "1", 
    "name": "Sean Spice", 
    "industry__name": "Motormouth", 
    "cost": "-$5,300", 
}]; 

$(document).ready(function() { 
    var table = $('#dattable').DataTable({ 
     data: data2, 
     columns: [{ 
      'data': null, 
      'render': function(data, type, row, meta) { 
      return '<a href=' + data.id + '>' + data.name + '</a>'; 
      } 
     }, { 
      data: 'industry__name' 
     }, { 
      data: 'cost' 
     }] 
    }); 
}); 

あなたは、私が適用された変更を確認するために、同様にこれをたくさん取ることができます。そのためhttps://jsfiddle.net/dr3hcd9j/

+0

おかげドキュメントは少し混乱しました。 – ccsv

+1

私は同意します、喜んで助けてください。 – rolspace

関連する問題