그리드를 활용하고 있습니다.
전체 그리드 목록에서 특정 행을 선택 했을 경우, 선택된 행이 최상위로 올라가게 하고 싶은데
가능한 API를 찾을수 없어 문의 드립니다. 항상 잘 사용하고 있습니다. 감사 합니다.
해당 기능은 아직 없는것 같아서…
focus 함수를 이용하여 비슷하게끔은 구현해보았는데… 굳이 쓰셔야 하신다면…
권장드릴 수 있는 방법은 아닌것 같습니다.
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<title>그리드 예제</title>
<link rel="stylesheet" type="text/css" href="https://cdn.rawgit.com/ax5ui/ax5ui-grid/master/dist/ax5grid.css">
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.3.min.js"></script>
<script type="text/javascript" src="https://cdn.rawgit.com/ax5ui/ax5core/master/dist/ax5core.min.js"></script>
<script type="text/javascript" src="https://cdn.rawgit.com/ax5ui/ax5ui-grid/master/dist/ax5grid.min.js"></script>
</head>
<body>
<div data-ax5grid="my-grid" data-ax5grid-config="{}" style="height: 300px;"></div>
<script type="text/javascript">
var myGrid = new ax5.ui.grid();
$(document.body).ready(function () {
myGrid.setConfig({
header: {
selector: false
},
showRowSelector: true,
target: $('[data-ax5grid="my-grid"]'),
columns: [
{key: "a", label: "BOX", width: 27, editor: {type: "checkbox", config: {trueValue: "Y", falseValue: "N"}}},
{key: "b", label: "클릭시 이동"}
],
body: {
onClick: function () {
if (this.column.key == "b") {
this.self.focus("END");
this.self.focus(this.dindex);
}
}
}
});
// 그리드 데이터 가져오기
myGrid.setData([
{a: "Y", b: "1"},
{a: "Y", b: "2"},
{a: "Y", b: "3"},
{a: "Y", b: "4"},
{a: "Y", b: "5"},
{a: "Y", b: "6"},
{a: "Y", b: "7"},
{a: "Y", b: "8"},
{a: "Y", b: "9"},
{a: "Y", b: "10"},
{a: "Y", b: "11"},
{a: "Y", b: "12"},
{a: "Y", b: "13"},
{a: "Y", b: "14"},
{a: "Y", b: "15"},
{a: "Y", b: "16"},
{a: "Y", b: "17"},
{a: "Y", b: "18"},
{a: "Y", b: "19"},
{a: "Y", b: "20"},
{a: "Y", b: "21"},
{a: "Y", b: "22"},
{a: "Y", b: "23"},
{a: "Y", b: "24"},
{a: "Y", b: "25"},
{a: "Y", b: "26"},
{a: "Y", b: "27"},
{a: "Y", b: "28"},
{a: "Y", b: "29"},
{a: "Y", b: "30"}
]);
});
</script>
</body>
</html>
그냥 데이터를 다시 재 배열하시고 그리드에 다시 할당하세요.
var originList = firstGrid.getList();
var selectedItem = originList.splice(3, 1);
var sortedList = Array.prototype.concat(selectedItem, originList);
firstGrid.setData(sortedList);
최상위로 올라가게 한다는게
선택된 행이 첫 번째 행이 되게 하고 싶으신 건가요?
아니면 포커스가 이동하게 하고 싶으신 건가요?
aeei님 답글을 보니 제가 질문을 잘못 이해한걸 수도…
제목보고 현준님과 같은 생각 했어요