ajax前台即时显示新数据的问题
只需告诉我前台显示页面的AJAX程序代码就可以了,只要ASP的代码不需要任何添加、删除、编辑操作这类的功能,完全只要显示就可以了!目的是当数据库中的内容更新时,同时显示页...
只需告诉我前台显示页面的AJAX程序代码就可以了,只要ASP的代码 不需要任何添加、删除、编辑操作这类的功能,完全只要显示就可以了! 目的是当数据库中的内容更新时,同时显示页面也相应同步更新,不要刷新页面! 不需要任何触发条件(像点击、按钮之类的触发条件全不要),就是数据库更新同步前台更新。 请不要给我一个像什么无刷新评论,无刷新留言,无刷新新闻,无刷新投票这样的代码!不需要这样的! 更不需要理论常识的答案!我要是能通过理论就能做出来,就不再这求助各位了!
展开
2013-06-17
展开全部
这东西不讲点理论的东西还真不行,ajax是要求前台和后台配合实现页面的无刷新。我也不讲这种方式有什么不好了,其js部分如下:解析的部分我没写,那个地方得看你的后台如何拼装。不过最后还是给一个小的解析例子。 var xmlHttpRequest;
function createXmlHttpRequest(){
if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
return new XMLHttpRequest();
}
}
function submitRequest(){
var url = "处理页面地址";
xmlHttpRequest = createXmlHttpRequest();
xmlHttpRequest.onreadystatechange=showInfo;
xmlHttpRequest.open("GET",url,true);
xmlHttpRequest.send(null);
setTimeout(submitRequest,60000);//这里代表间隔一分钟重新获取一次服务器信息
}
function showInfo(){
if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){
//var flag = xmlHttpRequest.responseText;//responseXML
//alert(flag);//这里显示出来的就是你处理后的结果,一般是你再后台处理好的xml字符串
//这里就是解析你的xml显示到页面
}
}返回的是XML解析的部分案例是如下(后台拼装xml):var SelXML = xmlHttpRequest.responseXML;
var ids = SelXML .getElementsByTagName("idNode");
var names = SelXML .getElementsByTagName("nameNode");
var oSel = document.getElementById("selExample");
oSel.options.length=0;
for(var i = 0; i < ids.length; i++){
oSel.options.add(new Option(names[i].text,ids[i].text));
}//返回的是文本可以如下(后台直接瓶装html)var XMLStr= xmlHttpRequest.responseText;
var oSel = document.getElementById("selExample");
oSel.innerHTML=XMLStr;其实这两种拼装方法都是一样,就是后者使用常用的html标签可以在页面直接显示,前者使用自定义标签页面解析再显示。
function createXmlHttpRequest(){
if(window.ActiveXObject){
return new ActiveXObject("Microsoft.XMLHTTP");
}else if(window.XMLHttpRequest){
return new XMLHttpRequest();
}
}
function submitRequest(){
var url = "处理页面地址";
xmlHttpRequest = createXmlHttpRequest();
xmlHttpRequest.onreadystatechange=showInfo;
xmlHttpRequest.open("GET",url,true);
xmlHttpRequest.send(null);
setTimeout(submitRequest,60000);//这里代表间隔一分钟重新获取一次服务器信息
}
function showInfo(){
if(xmlHttpRequest.readyState==4&&xmlHttpRequest.status==200){
//var flag = xmlHttpRequest.responseText;//responseXML
//alert(flag);//这里显示出来的就是你处理后的结果,一般是你再后台处理好的xml字符串
//这里就是解析你的xml显示到页面
}
}返回的是XML解析的部分案例是如下(后台拼装xml):var SelXML = xmlHttpRequest.responseXML;
var ids = SelXML .getElementsByTagName("idNode");
var names = SelXML .getElementsByTagName("nameNode");
var oSel = document.getElementById("selExample");
oSel.options.length=0;
for(var i = 0; i < ids.length; i++){
oSel.options.add(new Option(names[i].text,ids[i].text));
}//返回的是文本可以如下(后台直接瓶装html)var XMLStr= xmlHttpRequest.responseText;
var oSel = document.getElementById("selExample");
oSel.innerHTML=XMLStr;其实这两种拼装方法都是一样,就是后者使用常用的html标签可以在页面直接显示,前者使用自定义标签页面解析再显示。
2013-06-17
展开全部
function cretateXMLHttpRequest()
{
if(window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
function doStart()//提交数据参数比如传页面参数
{
cretateXMLHttpRequest();
var url="这是AJAX页面输出的数据.aspx"; 数据更新就显示在这个页面
xmlhttp.open("GET",url,false);
xmlhttp.send();
return xmlhttp.responseText; 返回 把AJAX页面数据
}a 页面 b 页面B 是 AJAX 页面 ,这个页面就是把数据库更新的数据查询出来显示到这个页面上,a 页面通过doStart() 取得 B 页面的数据,doStart()方法返回 B页面的数据
{
if(window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
function doStart()//提交数据参数比如传页面参数
{
cretateXMLHttpRequest();
var url="这是AJAX页面输出的数据.aspx"; 数据更新就显示在这个页面
xmlhttp.open("GET",url,false);
xmlhttp.send();
return xmlhttp.responseText; 返回 把AJAX页面数据
}a 页面 b 页面B 是 AJAX 页面 ,这个页面就是把数据库更新的数据查询出来显示到这个页面上,a 页面通过doStart() 取得 B 页面的数据,doStart()方法返回 B页面的数据
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-17
展开全部
-------------------------show.asp------------------------------
<%
dim req
req=request.querystring("action")
if req="getTime" then
response.write now
else
%>
<div id="getTime">现在时间是</div><script type="text/javascript" language="javascript">
var HttpRequest;function Http_Request()
{
if(window.XMLHttpRequest)
{
HttpRequest=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
HttpRequest=new ActiveXObject("Msxml2.XMLHTTP");
if(!HttpRequest)
{
HttpRequest=new ActiveXObject("Microsoft.XMLHTTP");
}
}
if(HttpRequest)
{
Init_Request();
}
}
function Init_Request()
{
HttpRequest.onreadystatechange=HandResponse;
HttpRequest.open("get","show.asp?action=getTime",false);
HttpRequest.send(null);
}
function HandResponse()
{
if(HttpRequest.readyState==4)
{
if(HttpRequest.status==200)
{
document.getElementsById("getTime").innerHTML="现在时间是:"+HttpRequest.responseText;
}
}
}setInterval("Http_Request()",1000);
</script>
<%
end if
%>
<%
dim req
req=request.querystring("action")
if req="getTime" then
response.write now
else
%>
<div id="getTime">现在时间是</div><script type="text/javascript" language="javascript">
var HttpRequest;function Http_Request()
{
if(window.XMLHttpRequest)
{
HttpRequest=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
HttpRequest=new ActiveXObject("Msxml2.XMLHTTP");
if(!HttpRequest)
{
HttpRequest=new ActiveXObject("Microsoft.XMLHTTP");
}
}
if(HttpRequest)
{
Init_Request();
}
}
function Init_Request()
{
HttpRequest.onreadystatechange=HandResponse;
HttpRequest.open("get","show.asp?action=getTime",false);
HttpRequest.send(null);
}
function HandResponse()
{
if(HttpRequest.readyState==4)
{
if(HttpRequest.status==200)
{
document.getElementsById("getTime").innerHTML="现在时间是:"+HttpRequest.responseText;
}
}
}setInterval("Http_Request()",1000);
</script>
<%
end if
%>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询