#javascript #jquery #datatables
#javascript #jquery #таблицы данных
Вопрос:
В таблицах данных, в ссылках на столбцы, можем ли мы выполнить оператор условия if? На основе значения переменной мы решаем, какой столбец показать / скрыть ниже. Как мне решить приведенную ниже проблему? Приведенный ниже код выдает эту ошибку:
Неперехваченная синтаксическая ошибка: неожиданный токен if
"columnDefs": [
if (operation == Operation.VIEW) {
{"targets": [0], "className": "text-center"},
{"targets": [1], "className": "text-center"},
{"targets": [2], "width": "3%", "visible": false}
}
if (operation == Operation.EDIT) {
{"targets": [0], "className": "text-center"},
{"targets": [1], "width": "3%", "visible": false},
{"targets": [2], "className": "text-center"}
}
],
Комментарии:
1. Вместо этого вы могли бы вызвать функцию, в которой вы могли бы проверить условие и вместо этого вернуть соответствующий объект. то, что вы сделали, — это добавили условие внутри массива. чего не ожидается.
Ответ №1:
Следуйте приведенному ниже синтаксису и коду для реализации вашей логики
"columnDefs" : [ {
"targets" : [ 3, 4, 5 ],
render : function(data, type, row, meta) {
if (meta.col == 4) {
if (data == 1) {
return 'Test1';
} else if (data == 2) {
return 'Test2';
}
} else if (meta.col == 3 || meta.col == 5) {
if (data == null || data == "") {
return "";
} else {
return data;
}
}
},
} ],
"columnDefs" : [ {
"className" : "dt-center",
"targets" : "0"
} ],