通过Ajax技术实现无刷新的更新数据表格
2006-03-20 18:06
776 查看
HTML代码(WebForm1.aspx)
<HTML>
<HEAD>
<title>WebForm2</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<script language="javascript">
var xmlHttp;
function getdata()
{
xmlHttp=new ActiveXObject("MSXML2.XMLHTTP");
xmlHttp.onreadystatechange=getread;
xmlHttp.Open("GET","AjaxProcess.aspx",true);
xmlHttp.Send();
}
function getread()
{
if (xmlHttp.readyState==4)
{
if (xmlHttp.status==200)
{
var xmlReturn=xmlHttp.responseXML;
var node=xmlReturn.selectSingleNode("//NewDataSet").childNodes;
var tbody=document.createElement("tbody");
for (var i=0;i<node.length;i++)
{
var cnode=node[i].childNodes;
var tmpTr= document.createElement("tr");
for(var j=0;j<cnode.length;j++)
{
if ((cnode[j].nodeName=="c_id") || (cnode[j].nodeName=="c_name"))
{
var tmpTd= document.createElement("td");
tmpTd.setAttribute("style.WIDTH","50px");
tmpTd.innerText=cnode[j].text
tmpTr.appendChild(tmpTd);
}
}
tbody.appendChild(tmpTr);
}
document.getElementById("DataGrid2").appendChild(tbody);
}
else
{
alert("xmlHttp.status="+xmlHttp.status);
}
}
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<INPUT style="Z-INDEX: 101; LEFT: 32px; POSITION: absolute; TOP: 40px" onclick="getdata()"
type="button" value="Button">
<table id="DataGrid2" style="Z-INDEX: 102; LEFT: 32px; WIDTH: 344px; POSITION: absolute; TOP: 72px; HEIGHT: 24px">
<TR>
<TD style="WIDTH: 122px">机构号</TD>
<TD style="WIDTH: 50px">机构名</TD>
</TR>
</table>
</form>
</body>
</HTML>
服务端代码(另外一个aspx.cs文件WebForm2.aspx)
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
SqlConnection sqlconn=new SqlConnection("Initial Catalog=myDataBase;Data Source=192.168.0.166;UID=sa;PWD=123");
SqlCommand sqlcomm=new SqlCommand("select * from tb_table",sqlconn);
System.Data.SqlClient.SqlDataAdapter adapter=new SqlDataAdapter();
adapter.SelectCommand=sqlcomm;
DataSet ds=new DataSet();
sqlconn.Open();
adapter.Fill(ds);
Response.ContentType="text/xml";
Response.Write(ds.GetXml());
}
<HTML>
<HEAD>
<title>WebForm2</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
<script language="javascript">
var xmlHttp;
function getdata()
{
xmlHttp=new ActiveXObject("MSXML2.XMLHTTP");
xmlHttp.onreadystatechange=getread;
xmlHttp.Open("GET","AjaxProcess.aspx",true);
xmlHttp.Send();
}
function getread()
{
if (xmlHttp.readyState==4)
{
if (xmlHttp.status==200)
{
var xmlReturn=xmlHttp.responseXML;
var node=xmlReturn.selectSingleNode("//NewDataSet").childNodes;
var tbody=document.createElement("tbody");
for (var i=0;i<node.length;i++)
{
var cnode=node[i].childNodes;
var tmpTr= document.createElement("tr");
for(var j=0;j<cnode.length;j++)
{
if ((cnode[j].nodeName=="c_id") || (cnode[j].nodeName=="c_name"))
{
var tmpTd= document.createElement("td");
tmpTd.setAttribute("style.WIDTH","50px");
tmpTd.innerText=cnode[j].text
tmpTr.appendChild(tmpTd);
}
}
tbody.appendChild(tmpTr);
}
document.getElementById("DataGrid2").appendChild(tbody);
}
else
{
alert("xmlHttp.status="+xmlHttp.status);
}
}
}
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<INPUT style="Z-INDEX: 101; LEFT: 32px; POSITION: absolute; TOP: 40px" onclick="getdata()"
type="button" value="Button">
<table id="DataGrid2" style="Z-INDEX: 102; LEFT: 32px; WIDTH: 344px; POSITION: absolute; TOP: 72px; HEIGHT: 24px">
<TR>
<TD style="WIDTH: 122px">机构号</TD>
<TD style="WIDTH: 50px">机构名</TD>
</TR>
</table>
</form>
</body>
</HTML>
服务端代码(另外一个aspx.cs文件WebForm2.aspx)
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
SqlConnection sqlconn=new SqlConnection("Initial Catalog=myDataBase;Data Source=192.168.0.166;UID=sa;PWD=123");
SqlCommand sqlcomm=new SqlCommand("select * from tb_table",sqlconn);
System.Data.SqlClient.SqlDataAdapter adapter=new SqlDataAdapter();
adapter.SelectCommand=sqlcomm;
DataSet ds=new DataSet();
sqlconn.Open();
adapter.Fill(ds);
Response.ContentType="text/xml";
Response.Write(ds.GetXml());
}
相关文章推荐
- ajax实现异步刷新,并通过json接收发送数据!
- 使用 jQuery+Ajax+MySQL+Servlet 实现不刷新页面数据更新
- AjaxPro实现无刷新更新数据
- thinkphp+ajax 移动端实现滚动到底部加载数据(无刷新动态加载数据技术的应用)
- 在js中利用ajax技术实现不刷新更新内容
- 动态的把数据显示在table中,点击某一行的删除按钮实现该行的删除(通过ajax实现页面的无刷新加载)
- Ajax跨域的解决办法:载入javascript(js)文件实现无刷新更新数据(转载)
- Ajax实现定时刷新,获取后台数据(实现技术ASP)
- js实现手机端可以上拉刷新,动态通过ajax从后台获取数据
- bootstrap jquery dataTable 异步ajax刷新表格数据的实现方法
- 基于Ajax技术实现的下拉数据表格组件
- Ajax实现定时刷新,获取后台数据(实现技术ASP)
- 利用ajax和JSP技术实现网页中表单的局部刷新(只刷新表单数据,而不刷新整个页面)
- Ajax实现定时刷新,获取后台数据(实现技术ASP)
- Ajax对表格中的信息不刷新页面进行更新数据
- 基于Ajax技术实现的数据表格控件
- Ajax无刷新实现定时更新数据
- Ajax实现无刷新的获取数据并绑定到GridView,以及无刷新更新数据[转]
- 动态的把数据显示在table中,点击某一行的删除按钮实现该行的删除(通过ajax实现页面的无刷新加载)
- Ajax实现无刷新的获取数据并绑定到GridView,以及无刷新更新数据