Я не смог найти ни одного ответа - ни в Stackoverflow, ни в Google - который отвечает на мой конкретный c вопрос. Возможно я просто не использую правильные условия поиска. Также кажется, что большинство примеров на веб-сайте Datatables имеют дело со столбцами, которые определены в html и / или не обеспечивают большую сложность.
У меня есть набор данных json, который включает столбец идентификатора, который я хотел бы использовать, чтобы открыть экран редактирования для выбранного элемента, но я не хочу, чтобы идентификатор был виден конечному пользователю.
Скрипт:
var tableData = [{
"iditem": 1,
"itemcaption": "Edit Your Website...",
"itemurl": "\/\/#devurl#",
"itemclass": "website",
"adminonly": 0,
"deprecated": 0
}, {
"iditem": 2,
"itemcaption": "Navigator",
"itemurl": "\/admin\/?#b#",
"itemclass": "navigator",
"adminonly": 1,
"deprecated": 0
}, {
"iditem": 3,
"itemcaption": "Ad Baskets",
"itemurl": "\/login?cmd=dologin",
"itemclass": "vehicleSearches",
"adminonly": 0,
"deprecated": 0
}, {
"iditem": 4,
"itemcaption": "Calendar",
"itemurl": "\/admin\/calendar/?#b#",
"itemclass": "calendar",
"adminonly": 0,
"deprecated": 0
}, {
"iditem": 5,
"itemcaption": "Company\/Employees",
"itemurl": "\/admin\/company/?#b#",
"itemclass": "company",
"adminonly": 0,
"deprecated": 0
}];
tblListing = $("#tblMenuList").DataTable({
data: tableData,
columns: [
{title: 'Item Caption', data: "itemcaption"},
{title: 'URL', data: "itemurl"},
{title: 'Class', data: "itemclass"},
{title: 'Deprecated', data: "deprecated"},
{title: 'Admin', data: "adminonly"}
],
columnDefs: [
{
"targets": 0,
"render": function ( data, type, row, meta ) {
return '<a href="editmyitem.php?id={SOMEHOW GET IDITEM IN HERE}">' + data + '</a>';
^^^^^^^^^^^^^^^^^^^^^^^^^^
}
}
]
});
HTML:
<table id="tblMenuList"></table>
Я хотел бы включить идентификатор в качестве атрибута HTML5 data- * строки. Если это невозможно, я должен просто включить столбец id, hidden и пройти DOM для значения?