在AJAX中从服务器获取的DataSet数据的访问:
var dt = response.value.Tables[0]; //dt就是DataSet的表0
for (var i = index;i < dt.Rows.length;i++)//遍历数据行
var rowvalue = dt.Rows[i].Name;//获取Name字段的值
dt.Columns.length //获取表中字段的数量
dt.Rows.length //获取表中行的数量
var row = dt.Rows[i][dt.Columns[k].Name];//获取行i字段k的值
下面的例子,处理了按dt的数据构造一个table显示在指定的td节点中,并按实际行大小添加了上一页下一页的导航按钮:
function NextPage(pgIndex) {
//表头 var shtml ="";
var tdWidth = 50;
if(_Resuldt.Columns.length > 10) {
shtml = "<TABLE cellSpacing=0 cellPadding=0 border = 1 width="+_Resuldt.Columns.length * 40+ ">" +
"<tr height=18 bgcolor=#cccc99> ";
tdWidth = 40;
}
else {
shtml ="<TABLE cellSpacing=0 cellPadding=0 border = 1 width=730><tr height=18 bgcolor=#cccc99> ";
tdWidth = 62;
}
for (var i = 1;i < _Resuldt.Columns.length;i++)//添加表头{
if(i==1)
shtml+= "<td width=120 align=center>"+_Resuldt.Columns[i].Name+"</td>";
else
shtml+= "<td width="+tdWidth+" align=center>"+_Resuldt.Columns[i].Name+"</td>";
}
shtml += "</tr>";
var count = 0;
var cg = false;//行与行之间变色标志
for( i= pgIndex * pageCount;i<_Resuldt.Rows.length;i++)//遍历行填充table
{
if(cg)
{
shtml+="<tr height = 18 bgcolor=#cccc99>";
cg = !cg;
}
else
{
shtml+="<tr height = 18>";
cg = !cg;
}
for( k=1;k<_Resuldt.Columns.length;k++)//字段遍历
{
if(k==1)
{
shtml+= "<td width=120 align=center><a href=javascript:SHowMessage("+
_Resuldt.Rows[i].VehicleID+")>"+_Resuldt.Rows[i][_Resuldt.Columns[k].Name] +"</a></td>"
}
else
{
var result = _Resuldt.Rows[i][_Resuldt.Columns[k].Name];
shtml+="<td align=center >" +result + "</td>";
}
}
shtml += "</tr>";
count ++;
if(count == pageCount)
{
break;
}
}
//添加导航按钮
var nexttd = "<td height = 20 id = nextid width = 100></td>";
var pretd = "<td height =20 id=preid width = 100></td>";
//添加导航按钮
if(_Resuldt.Columns.length > 10)
{
shtml += "</table><TABLE cellSpacing=0 cellPadding=0 border = 0 width=730>" +
"<tr height=18 bgcolor=#ffffff> ";
}
else
{
shtml += "</table><TABLE cellSpacing=0 cellPadding=0 border = 0 width=730>" +
"<tr height=18 bgcolor=#ffffff> ";
}
shtml += "<td width = 100> </td> ";
shtml += pretd;
shtml += "<td width = 100> </td> ";
shtml += nexttd;
shtml += "</tr></table>";
var area_father = document.getElementById("tblVehicle");
area_father.innerHTML = shtml;
var pageCount = 25;//每页显示行数
if(_Resuldt.Columns.length > 10)
{
shtml = "";
var area_father = document.getElementById("tblResult");
area_father.innerHTML = shtml;
if(pageCount * (pgIndex + 1) < _Resuldt.Rows.length)//有下一页
{
var npagef = document.getElementById("nextid");
var np = document.createElement("a");
np.href = "javascript:NextPage(" + eval(pgIndex+1) + ")";
np.innerHTML = "下一页";
npagef.appendChild(np);
}
if(pgIndex > 0)//有上一页
{
var npagef = document.getElementById("preid");
var np = document.createElement("a");
np.href = "javascript:NextPage(" + eval(pgIndex-1) + ")";
np.innerHTML = "上一页";
npagef.appendChild(np);
}
评论