初步设想是这样: 1.使用Ajax从后台查询数据库得到数据集
2.转换为JSON格式字符串返回到前台页面
3.前台页面使用Javascript解析数据集JSON字符串在页面上生成Table表格呈现给用户 因为业务需要,结果集数据量可能会较大,一般有1000条以上甚至2000多条。(不要问为什么不把这么多数据分页显示,前面说了是业务原因用户必须要在一页上看到全部数据) 生成、解析JSON字符串都不是问题,问题在于怎么填充数据生成table表格。我自己知道的有两种方法: 1.把数据加上 <tr> <td>等等标签,拼成一个完整的HTML表格字符串,然后用innerHTML或者outerHTML等等将这个大字符串填充到页面 2.取得table表格对象,然后循环用insertRow插入行,再循环用insertCell在刚才插入的行上插入单元格,最后设置单元格文本内容请教各位给出1、2两种方法
2.转换为JSON格式字符串返回到前台页面
3.前台页面使用Javascript解析数据集JSON字符串在页面上生成Table表格呈现给用户 因为业务需要,结果集数据量可能会较大,一般有1000条以上甚至2000多条。(不要问为什么不把这么多数据分页显示,前面说了是业务原因用户必须要在一页上看到全部数据) 生成、解析JSON字符串都不是问题,问题在于怎么填充数据生成table表格。我自己知道的有两种方法: 1.把数据加上 <tr> <td>等等标签,拼成一个完整的HTML表格字符串,然后用innerHTML或者outerHTML等等将这个大字符串填充到页面 2.取得table表格对象,然后循环用insertRow插入行,再循环用insertCell在刚才插入的行上插入单元格,最后设置单元格文本内容请教各位给出1、2两种方法
但是数据这样多,估计怎么样的都快不了。
<head>
<title></title>
<script src="js/jquery.corners.min.js" ></script>
<script src="js/jquery.js"></script>
<script src="js/jquery.validator.js"></script>
<script type="text/javascript">
var dddd=0;
function createT(){
dddd=dddd+1;
var tbody=document.getElementById("tableid");
for(var i=tbody.children.length;i> 0;i--){
tbody.children[i-1].removeNode(true);
}
for(var i=0;i<10;i++){
var tr=document.createElement("TR");
for(var j=0;j<10;j++){
var td=document.createElement("TD");
var text=document.createTextNode("text"+j+"i="+i+"dddd="+dddd);
td.appendChild(text);
tr.appendChild(td);
}
tbody.appendChild(tr);
}
}
</script>
</head>
<body>
<input type="button" value="create table" onclick="createT()" />
<table>
<tr><td>zhi</td></tr>
<tbody id="tableid"> </tbody>
</table>
</body>
</html>