Я пытаюсь реализовать функцию на таблице данных jQuery, которая возвращает 1-е и 4-й столбец нажатой строки
я следую этому примеру, который позволяет мне управлять нажатой строкой http://datatables.net/examples/api/select_single_row.html
думая, что я могу изменить этот обработчик, чтобы сделать процедуры значения ячейки чтения и использовать значение по моей собственной логике
/* Add a click handler to the rows - this could be used as a callback */
$("#example tbody").click(function(event) {
$(oTable.fnSettings().aoData).each(function (){
$(this.nTr).removeClass('row_selected');
});
$(event.target.parentNode).addClass('row_selected');
});
я также приехал с этим небольшим сегментом кода от форума таблицы данных http://datatables.net/forums/comments.php?DiscussionID=1384&page=1#Item_0
$('#example tbody tr').click( function () {
// Alert the contents of an element in a SPAN in the first TD
alert( $('td:eq(0) span', this).html() );
} );
у меня может быть какой-либо указатель, таким образом, я могу получить 1-й и 4-й столбец нажатого поля?
следующей первой части решили вышеупомянутое, спасибо зарубка
однако у меня есть следующая часть проблемы. когда я init таблица я использую
/* Init the table */
oTable = $('#filetable').dataTable( {
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "/crvWeb/jsonFileList.do",
"fnServerData": function ( sSource, aoData, fnCallback ) {
$.ajax( {
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": fnCallback
} );
}
} );
мой сервлет берет параметр запроса dir и возвращает список таблице данных как json ответ.
/crvWeb/jsonFileList.do
как я могу добавить и получить serlvet ответ с запросом сообщения, таким образом, мне можно было обновить мою таблицу?
Вы можете использовать .delegate()
проще всего здесь, вот так:
$("#example tbody").delegate("tr", "click", function() {
var firstCellText = $("td:first", this).text();
var fourthCellText = $("td:eq(3)", this).text();
});
Вы можете попробовать демо здесь
С Это должно помочь, если я правильно читаю ваш код: Он должен возвращать первый и четвертый дочерние элементы всех элементов tr с классом . delegate()
this
ссылается на , так как именно этот клик мы обрабатываем, что делает вещи немного чище... и это все еще только один обработчик событий на уровне , а не один на
.
$("tr.row_selected td:nth-child(1), tr.row_selected td:nth-child(4)");
row_selected
.
Похожие вопросы: