Как я могу узнать, какая строка таблицы данных jQuery была нажата? - PullRequest
0 голосов
/ 17 ноября 2011

Я хочу включить ссылку на удаление в столбец таблицы, используя плагин jQuery dataTables.Я уверен, что это легко.У меня нет проблем с добавлением столбцов, и я знаю синтаксис для фактического удаления таблицы, я просто не знаю строку, по которой щелкают.

Строки добавляются динамически через пользовательский интерфейс, поэтому яне отображать никаких строк, кроме заголовка в начале.

Ответы [ 3 ]

1 голос
/ 21 ноября 2011

другой пример ...

$("#TableID tbody").delegate("tr", "click", function() {
    var iPos = oTable.fnGetPosition( this );//oTable is the table object itself
    if(iPos!=null){
        //couple of example on what can be done with the clicked row...
        var aData = oTable.fnGetData( iPos );//get data of the clicked row
        var iId = aData[1];//get column data of the row
        oTable.fnDeleteRow(iPos);//delete row

    }

});

1 голос
/ 17 ноября 2011

Я сделал это недавно, чтобы скрыть / показать дополнительную информацию для каждой строки. Вот фрагмент моего кода:

        function fnTableRowClickHandler()
        {
            var nTr = this;
            var oT = $(this.parentNode.parentNode).dataTable()

            if ( $(this).hasClass('highlighted') )
            {
                /* This row is already open - close it */
                oT.fnClose( this );
                $(this).removeClass('highlighted')
            }
            else
            {
                /* Open this row, if it's classy enough */
                if ( oT.fnGetData( nTr ) == null ) return;

                $(this).addClass('highlighted')
                oT.fnOpen( nTr, fnFormatDetails(oT, nTr), 'listingDetails opened' );
            }

        }

Мне пришлось добавить эту проверку против нуля в else, потому что это добавило бы короткое пустое расширение для каждого элемента в расширенной строке, если была нажата дополнительная информация.

Позже добавим обработчик в таблицу:

 $("#TableId tbody tr").live( 'click', fnTableRowClickHandler )
0 голосов
/ 17 ноября 2011

Динамически назначайте каждой строке уникальный идентификатор при создании и заставляйте событие щелчка для каждой строки удалять элемент с этим идентификатором

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...