2016-02-09 1 views
2

У меня есть uiGrid, который использует ui-grid-cellNav, который поставляет один клик для редактирования поля. Если в верхней части экрана есть место, чтобы сетка была не наверху, щелчок приведет к переходу страницы вверх. Кроме того, любые кнопки, расположенные над сеткой, перестают отвечать на клики для первого щелчка после этого. Чтобы увидеть поведение, откройте PLNKR и всего лишь один клик в первой ячейке с пометкой «1». На экране появится прокрутка, так что сетка находится в верхней части экрана. Теперь прокрутите экран, чтобы вы могли увидеть кнопку «Отмена» и щелкнуть по ней. Экран вернется к сетке. Прокрутите еще раз и нажмите «Отмена», и теперь кнопка будет работать.uiGrid с экраном uiGridCellNav перескакивает по щелчку и фокусу

Вот plnkr https://plnkr.co/edit/OVNUeaGqTAoJqdZvqmQ8?p=preview

Я сделал вывод, что что RowHeight больше, чем по умолчанию в gridOptions является причиной.

rowHeight: 87 

Если вы прокомментируете вариант rowHeight, этого не произойдет. Я отлаживал код uiGridCellNav, и это, похоже, вызвано чем-то в функции focus.byElement, но это насколько я получил.

+0

На самом деле вам нужно нажать «Владелец ", чтобы заставить поведение кнопки« Отмена »перестать работать. Нажатие на не редактируемое поле просто приводит к переходу страницы. Также обратите внимание, что это похоже на то, что он находится в режиме редактирования в одной строке, а затем щелкая другую строку. – Scott

ответ

0

Любая высота сетки, которая предотвращает страницу с прокруткой будет решить эту проблему

.ccl-ui-grid { 
    height: 350px !important; //random height that skips page scroll 
    overflow: scroll; 
} 

Я отредактировали plunker с некоторой случайной высоты и, таким образом, проблема решена https://plnkr.co/edit/VWR0qeVvmbmnQUaNpudD?p=preview