Я использую плагин dataTables
В моих сортируемых столбцах я хочу заменить текст столбца кнопкой.
Однако, делая это:
$( oSettings.aoColumns[i].nTh).text();
Я могу получить текст соответствующего столбца, НО
$( oSettings.aoColumns[i].nTh).text("some text");
$( oSettings.aoColumns[i].nTh).html("<a href='#'>some button</a>");
Ничего не делает.
Может кто-нибудь сказать мне, почему я могу получать информацию из ячейки, но не редактировать ее содержимое? Не обязательно вопрос dataTables, но, возможно, кто-то столкнулся с чем-то похожим.
Спасибо за помощь!
РЕДАКТИРОВАТЬ: Это решение:
Внутри вашего вызова таблицы укажите, какие столбцы должны сортироваться = они получают .jqmSorter class
"aoColumns": [
/* Select */ {"bSortable": false },
/* Type */ {"sClass": "jqmSorter"},
/* From */ {"bSortable": false },
/* Status */ {"bSortable": false },
],
Затем вызовите fnHeaderCallback , в котором я заменяю содержимое ячейки заголовка кнопкой JQM:
"fnHeaderCallback": function( nHead ) {
$(nHead).closest('thead').find('.jqmSorter').each( function () {
var sortTitle = $(this).text(),
sortButton =
$( document.createElement( "a" ) ).buttonMarkup({
shadow: false,
corners: false,
theme: 'a',
iconpos: "right",
icon: "ui-icon-radio-off"
})
sortButton.find('.ui-btn-text').text(sortTitle);
$(this).html( sortButton )
sortButton.addClass("colHighTrigger");
});
}