Как получить индекс (строка / столбец) выбранной ячейки в sap.m.table?

#javascript #jquery #sapui5

#javascript #jquery #sapui5

Вопрос:

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

 function doSomething(i) {
    setTimeout(function() {
        for (var j = 0; j < columnNum; j  ) {
            oTable.getItems()[i].getCells()[j].$().parent().click(function() {
            alert(i ", " j);
            });
        }
    }, i);
}

for (var i = 0; i < rowNum; i  ) {
    doSomething(i);
}
  

Вот полная скрипка:https://jsbin.com/hecuhevawe/1/edit?html , css, js, вывод.

Ответ №1:

Попробуйте изменить последний цикл, чтобы выполнить итерацию по всем ячейкам и передать индекс строки и столбца функции doSomething.

 function doSomething(i,j) {
    setTimeout(function() {
            oTable.getItems()[i].getCells()[j].$().parent().click(function() {
               alert(i ", " j);
            });
    }, i);
}

for (var i = 0; i < rowNum; i  ) {
    for (var j = 0; j < columnNum; j  ) {
      doSomething(i,j);
    }
}