静态table 只修改id 调用相关的jquery插件 能实现排序功能,但如果直接换成已经做好的调用数据库的id时 ,却没有作用。请问静态和动态调用的数据 有什么区别?如何处理好些?
例如: 静态
<table style="width: 100%;" id="myTable" class="table_list" >
<thead >
<tr> <th >aa</th><th >bb</th><th >cc</th> </tr>
</thead>
<tbody><tr> <th >a1</th><th >a2</th><th >a3</th> </tr>
<tr> <th >b2</th><th >b2</th><th >b3</th> </tr>
</tbody>
已经做好的动态调用部分:sbdHTML.Append("<table style=\"width: 100%;\" id=\"tblMain\"><thead>");
把id=myTable改成tblMain 无作用。
理论上没区别,是否是js或者class属性的缘故?
调用出来的后台显示在页面上的数据 是用Jquery直接排序页面缓存的数据吗?
"thead" 是这样写的吗?
是的啊
会不会是Jquery插件,绑定的id,你没改,导致事件未执行?
插件绑定的id就只有1个地方
<script type="text/javascript">
var sorter = new TINY.table.sorter("sorter");
sorter.head = "head";
sorter.asc = "asc";
sorter.desc = "desc";
sorter.even = "evenrow";
sorter.odd = "oddrow";
sorter.init("myTable", 1);
</script>
我只要把他和静态的table ID写成一致的,就能够排序,但将换成动态的写成一致却不行
@skky: sorter.init("myTable", 1);
应该改成sorter.init("tblMain", 1);这个吧
@skky: Id一定要对应好,否则是不可以排序的。
@BERWOLF:动态的是按tblMain这样改的
@skky: 还有一种情况,动态生成的元素,不在dom树中,如果要指定事件,需要用live等绑定。如果你是动态的,那么一定要确保这个插件支持后期追加的元素,而且你要保证插件代码,在动态Append之后运行。
@幻天芒: 如何判断动态元素是否在dom 树中呢?
@skky: 脚本追加的就不在,呵呵~