私のDataTableの1つの列はLogeion Linkと呼ばれます。各レコードのURLを表示しますが、このURLはデフォルトではアクティブではありません。これを簡単に修正する方法はありますか?DataTableの各行にリンクを含む列をアクティブにすると、列も短くなりますか?
その他の問題は....完全なURLを表示すると、列が非常に長くなります。私は列のテキストを "url"と言うだけで、logeionのURLへのハイパーリンクとなる文字列で変更しても構いません。どうやってそれをやり始めますか?
DataTablesの行と特定のDataTablesの列のhtmlを編集する方法が見つかったら、私は1つの石で2羽の鳥を打つことができると仮定して、 "この特定の列(Logeion Link )、そのhtmlに<a>
タグを付けて、上記<a>
タグのテキストを変更してください。
これはちょうど...私はどのセレクタまたはコールバックが各行のhtmlを変更できるかは不明です。
編集:私のDataTableオブジェクトを初期化するためのコードはここにある
列は列のリストは、列の名前が "特別ときに私はdeeectしようとした columns.push({
"name" : $(this).data("fieldname"),
"data" : "fields."+$(this).data("fieldname"),
"visible" : $(this).data("visible")
});
オブジェクトである
words_table = $("#words_generated").DataTable({
"data" : word_data_filtered,
"columns" : columns, //should this be global_ocolumns
"aLengthMenu": [[25, 50, 100, 200, -1],
[25, 50, 100, 250, "All"]],
"pageLength": 100,
});
logeion_url "(これは.data(" fieldname ")属性で動作します)が、構文エラーが発生しました。
if ($(this).data("fieldname") == "logeion_url") {
columns.push({
"name": $(this).data("fieldname"),
"data" : "fields.logeion_url",
"fnCreatedCell": function (nTd, sData, oData, iRow, iCol) {
$(nTd).html("<a href="+sData.fields.logeion_url+">"url"</a>");
}
,
"visible" : $(this).data("visible")
});
私はそうそう、答えはレンダリングを使用することで、このフォーラムの提案 https://www.datatables.net/forums/discussion/25111/hyperlink-in-td
を使用してください。ここにリンクをレンダリングする例がありますhttps://datatables.net/reference/option/columns.render –
あなたは正しいです!コードをコピーして貼り付けます。 –