如何将滚动条添加到我的动态表中
How to add scroll bar to my dynamic table?
如果我在index.html:中定义了一个空表
<body>
<table width="800" border="0" class="my-table">
<tr>
</tr>
</table>
</body>
然后,我通过调用以下Javascript代码将行和列添加到我的表中:
var myTable = $('.my-table');
var myArr=GET_FROM_SERVER //server returns an arry of object, myArr.length>50
for(var i=0; i<myArr.length)
myTable.append("<tr id="+i+">"
+" <td>"+myArr[i].name+"</td>"
+"<td>"+myArr[i].address+"</td>"
+"</tr>");
myArr
是一个从服务器获取的对象数组,这个数组的长度可以超过50。
我成功地完成了所有这些工作,我的问题是,我如何添加滚动条以便如果行太多,用户可以使用滚动条检查表内容。
我会用div 包装表格
<body>
<div style="overflow:scroll;height:80px;width:100%;overflow:auto">
<table width="800" border="0" class="my-table">
<tr> </tr>
</table>
</div>
</body>
快速简单的答案是父元素上的CSS overflow:scroll;
。
然而,如果你想让你的表更加生动,我建议你更进一步,使用像FixedTableHeader这样的JQuery插件。
这样做的好处是,它意味着你可以滚动表体,同时保持表头的位置,这使得当你有大量数据时更容易阅读。
您可能还需要一个脚本,允许用户单击标题并按不同列对表进行排序。在这种情况下,FlexiGrid可能是一个更好的选择。
从UI的角度来看,如果长表是分页的,而不是滚动的,那么与它交互会更容易。滚动可能会导致一些行为,使残疾用户难以进行交互。点击下一页链接很容易,但滚动起来并不总是那么容易。
我使用网格来解决表问题,我选择的网格是DataTables。它为您提供了内容的分页、过滤、排序、排序和ajax加载,如果您决心走这条路,还可以使用固定的标题滚动。您甚至可以设置下载到excel、pdf、打印机等,只需添加几项即可实现即时风格。所有这些都可以通过几行简单的代码进行设置。到目前为止,这是我用来让复杂数据快速提供给用户的最好、最快的技巧。
如果您只想查看滚动x位置(水平)你可以使用style="overflow-x:scroll"
相关文章:
- 尝试使用Node.js动态路由从IMDB中抓取电影内容.但是在我的output.json文件中没有定义
- 为什么我的动态更改链接不起作用?(Javascript)
- 如何在Struts1中映射和读取我的动态表单条目
- jQuery Mobile//主题化我的动态对话框
- 如何将动态创建的元素添加到我的动态创建列表中
- 如何使我的动态下拉列表也依赖于父下拉列表
- 为什么内部 html 的 src 属性无法识别我的动态生成的变量
- 将我的动态 php 数组转换为 js
- 我的动态内容需要下一个和上一个
- 为什么我的动态下拉列表不起作用
- 将TinyMCE添加到我的动态表单表中
- 为什么我的动态表没有过滤功能?
- 如何使我的动态表滚动时,鼠标单击
- 如何确保为我的动态内容生成唯一的JavaScript Tweet按钮
- 为什么我的动态javascript高亮表单中断
- 为什么我的动态表单没有提交
- 如何将滚动条添加到我的动态表中
- 如何在我的“动态”表上获取documentElement.innerHTML
- 将我的动态行的值添加到我的数据库中
- 为什么我的动态表单提交不使用jquery替换的按钮标签值