2011-11-22 64 views
0

我正在使用SlickGrid,但我想用它与阿拉伯语,它需要从右向左的方向。如何从右向左制作SlickGrid?

columns[0]={'id':'title', 'name':'Title', 'field':'title', 'width': 10, 'sortable': true}; 
columns[1]={'id':'name', 'name':'Name', 'field':'name', 'width': 10, 'sortable': true}; 

var grid, data = [], 
options = { 
    enableCellNavigation: true, 
    enableColumnReorder: true, 
    autoHeight: true 
}, numberOfItems = 5, items = [], indices=[], isAsc = true, currentSortCol = { id: "title" };  
grid = new Slick.Grid("#container", data, columns, options); 

例如参见图片: http://i.stack.imgur.com/mbmaY.png

如何我SlickGrid实现这一目标?

+0

究竟你想成为rtl?你想以不同的顺序列? – njr101

+0

我想让网格从右侧开始(反射网格),即(第一个网格列从右侧开始,水平滚动条从右侧开始)。是的,像rtl在Html –

+0

当然,我错过了一些东西,但为什么不只是以相反的顺序传递列和数据数组? – vemv

回答

-1

我认为这可以使用浏览器中的内置RTL渲染来从右向左渲染标记。

HTML

<div dir="rtl" id="myGrid" style="width:400px;height:150px;">  
</div> 

的Javascript

columns.reverse(); 
grid = new Slick.Grid("#myGrid", data, columns, options); 

jsFiddle here

正如你可以在小提琴看到,在div呈现RTL正如人们所预料,但似乎有与问题呈现列标题。我没有深入研究代码,但也许存在一些与RTL设置冲突的绝对定位或其他技巧。不知道有多少其他功能可能会导致问题(单元格编辑器,格式化程序等)

+0

基本上,当我尝试方向=“rtl”时,我遇到了与标题相同的意外结果。非常感谢。 –