jQuery - jQGrid - развернуть, свернуть подсетку при щелчке строки сетки - PullRequest
1 голос
/ 27 ноября 2010

Здесь есть ответ о том, как развернуть подсеть, когда мы щелкаем строку, используя:

onSelectRow: function(rowId) {
    $("#jqgrid_id").expandSubGridRow(rowId);
}

Как мы можем свернуть строку, если она уже развернута?Я ищу что-то вроде:

onSelectRow: function(rowId){ 
    if (the_row_of_the_grid is expanded) {
        // collapse: How implement this???
    } else {
        $("#jqgrid_id").expandSubGridRow(rowId);
    }
}

, чтобы полностью развернуть / свернуть щелчок строки.

Ответы [ 3 ]

6 голосов
/ 27 ноября 2010

Я не тестировал его, но мне кажется, что следующий код должен делать то, что вам нужно:

onSelectRow: function (rowId) {
    $("#jqgrid_id").jqGrid ('toggleSubGridRow', rowId);
}

(см. Документацию jqGrid )

2 голосов
/ 25 января 2011

Мне нужно было то же самое, но я не мог допустить, чтобы сетка была расширена в том случае, если она уже свернута, поэтому «toggleSubGridRow» не будет работать для меня. Лучше в ситуации, когда допускается только коллапс, является метод collapseSubGridRow.

onSelectRow: function (rowId) {
    $("#jqgrid_id").jqGrid ('collapseSubGridRow', rowId);
}
0 голосов
/ 02 июня 2015

сначала это не сработало для меня xD ... Я установил selectOnExpand в своих subGridOptions, поэтому каждый раз, когда я нажимаю на раскрытие, он выбирает строку и снова вызывает onSelectRow, хаха ... так забавно ...

Надеюсь, что это поможет какой-то дурак, как я:)

...