求助!如何利用XmlHttp来实现Iframe的无刷新读取数据库的数据??
我的Iframe设置为1分钟自动刷新,刷新的时候从数据库中读取表online的Ip,Time,UserName三个字段的数据,并显示出来。
请问高手,如何利用XmlHttp实现无刷新,求原码?
问题点数:50、回复次数:24Top
1 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-05 21:28:25 得分 30
class xmlhttprequest
dim xmlhttp1
dim blogdom
Private Sub Class_Initialize
set xmlhttp1 = CreateObject("Microsoft.XMLHTTP")
set blogdom=createobject("Microsoft.XMLDOM")
end sub
Public function opensend(xmlurl,xslurl)
xmlhttp1.open "GET",xmlurl,false
xmlhttp1.send()
blogdom.async=false
blogdom.load xslurl
end function
public function show(flag)
if flage=2 then
set text2 = xmlhttp1.responseXML
text2.loadXML xmlhttp1.responseText
set blogxml=text2.documentElement
set blogroot=blogxml.selectSingleNode("//blog")
show=blogroot.transformNode(blogdom)
else
show=xmlhttp1.responseBody
end if
end function
Private Sub Class_Terminate
set xmlhttp1=nothing
set blogdom=nothing
End Sub
end classTop
2 楼ILBatistuta()回复于 2005-04-05 21:38:56 得分 0
up~·!Top
3 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-05 21:40:47 得分 0
还要其他的xmlhttp的代码么?Top
4 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-05 21:41:15 得分 0
<html>
<head>
<%
Dim objXMLHTTP, xml
Set xml = CreateObject("Microsoft.XMLHTTP")
xml.Open "GET","http://localhost/website/manageindex.htm", False
xml.Send
Function bin2str(binstr)
Dim varlen,clow,ccc,skipflag
'中文字符Skip标志
skipflag=0
ccc = ""
If Not IsNull(binstr) Then
varlen=LenB(binstr)
For i=1 To varlen
If skipflag=0 Then
clow = MidB(binstr,i,1)
'判断是否中文的字符
If AscB(clow) > 127 Then
'AscW会把二进制的中文双字节字符高位和低位反转,所以要先把中文的高低位反转
ccc =ccc & Chr(AscW(MidB(binstr,i+1,1) & clow))
skipflag=1
Else
ccc = ccc & Chr(AscB(clow))
End If
Else
skipflag=0
End If
Next
End If
bin2str = ccc
End Function
function utf2str(binstr)
end function
%>
</head>
<body>
<%
response.Write bin2str(xml.responseText)
%>
</body>
</html>Top
5 楼karl()回复于 2005-04-05 21:53:59 得分 0
很简单:开发一个页面,生成XML格式的数据,或者SQLServer数据库有支持XML数据输出。客户端界面写个函数(XMLHTTP对象读取该页面XML数据),弄个定时器window.setInt...(想不起)调用这个函数,输出页面
具体代码你有兴趣参考一下www.ba8ua.com 的webim ,也是我写的Top
6 楼s1ihome(My hometown is a beautiful village)回复于 2005-04-06 00:09:16 得分 20
建立getNewMessage.asp为xml格式,
eg.
<root>
<ip>202.110.22.22</ip>
<time>10</time>
<username>aa</username>
</root>
建立获取信息的页面
test.htm
<script>
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.open("GET","getNewMessage.asp",false);
xmlhttp.setRequestHeader("Content-Type","text/xml")
xmlhttp.send();
function getNewMsg() {
if (xmlhttp.readystate==4) {
var xml=xmlhttp.responseXML;
var xmldom=new ActiveXObject("Microsoft.XMLDOM");
xmldom.async="false";
xmldom.load(xml)
var nodes=xmldom.documentElement.childNodes;
var userip =nodes.item(i).childNodes(0).text;
var logintime=nodes.item(i).childNodes(1).text;
var username =nodes.item(i).childNodes(2).text;
document.write("ip:"+userip+",登陆时间:"+logintime+",用户名:"+username)
} //判断xmlhttp状态
}
window.setInterval("getNewMsg();", 60000); Top
7 楼xxwnet(火大)回复于 2005-04-06 13:41:51 得分 0
上面两几位高手,我还是看不懂,
请问我IFrame的SCR链接的文件是应该哪一个文件Top
8 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-06 13:46:00 得分 0
他没给你完整文件我也没有给你完整文件,这个是必须结合你自己的文件去写的Top
9 楼xxwnet(火大)回复于 2005-04-06 13:58:50 得分 0
请问,我只想在IFrame这个框架内显示出我数据库里面的字段,ip,useranme,time的所有记录就行,每1分钟刷新一次,我就实现这个功能。
请问,代码该怎么写??????Top
10 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-06 14:04:40 得分 0
这个要分两个页面的,其中一个页面是显示在iframe里的,另一个页面是asp页面,当然有时候可能有人还写xsl页面,这个看情况而定
你会用asp生成动态的xml文件么??现成针对你的文件我也没有的,你必须要理解这个才能写出来,如果你只是希望给你完全的代码的话,你还是给别人钱让别人写吧Top
11 楼xxwnet(火大)回复于 2005-04-06 14:09:34 得分 0
假设,我的IFrame的SCR=test.asp,现我想在test.asp里输出我上面所说的内容,
请问,该怎么写?Top
12 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2005-04-06 14:17:13 得分 0
iframe 里面的src 是像我或 s1ihome那么写
然后你还要写一个asp页面 去做select * from table where....的事情
然后把那个页面的东西返回到你的test.asp这个页面,其实你可以去阿信的网站搜索无限树的
在google里输入阿信里面那个javascript什么的东西的就是他的Top
13 楼gilbert007(西索)回复于 2005-04-06 14:36:18 得分 0
好代码,我收藏。
-------------------
搂住,你的iframe里面开的文件动态刷新不就行了,不影响整个页面的。
如你的主页面为a.asp,里面单独切出一个td格子,这时引用框架iframe(在这个框架里开启b.asp,就是你要动态刷新的Ip,Time,UserName),不用xml\也不用js,在b.asp里加
<meta http-equiv="refresh" content="60;URL=b.asp">
------------------------------------------------
够清楚了吧!
Top
14 楼xxwnet(火大)回复于 2005-04-06 14:42:03 得分 0
TO: gilbert007(西索)
你说的我知道,但我是想实现无刷新显示数据呀!!Top
15 楼xxwnet(火大)回复于 2005-04-06 14:45:45 得分 0
TO: liuxiaoyi666(兔子)
那我需要写那个asp文件怎么样才能与你们的那个文件相结合呢?Top
16 楼xxwnet(火大)回复于 2005-04-06 14:50:20 得分 0
哪位老兄给个完整代码Top
17 楼kincky(kincky)回复于 2005-04-18 14:31:00 得分 0
好东西,学习Top
18 楼sssmmm()回复于 2005-04-19 10:00:58 得分 0
学习Top
19 楼leelong80(小龙)回复于 2005-04-20 09:20:42 得分 0
顶,大家能不能再说得细一点呀.Top
20 楼notata(每天进步一点点)回复于 2005-04-20 10:16:41 得分 0
markTop
21 楼poonzsp(怒放的生命)回复于 2005-05-11 08:43:21 得分 0
mark
Top
22 楼notata(每天进步一点点)回复于 2005-05-11 13:54:42 得分 0
markTop
23 楼zhanglemail(咕噜)回复于 2005-05-11 14:07:38 得分 0
remarkTop
24 楼hyjz(蜗牛)回复于 2005-05-20 10:30:16 得分 0
收藏学习Top




