博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Ajax-----简易聊天室实战
阅读量:2496 次
发布时间:2019-05-11

本文共 2940 字,大约阅读时间需要 9 分钟。

img

chat.asp
chat.css
chat.js
data.xml
index.html
mess.asp
sendmess.asp

主要看chat.js mess.asp sendmess.asp

data.xml:

<?xml version="1.0" encoding="gb2312"?>
1-24 17:43:02
ailen
欢迎!!

[@more@]

mess.asp

dim node,i,nodecount
set xml = CreateObject("Microsoft.XMLDOM")
xml.async = false
xml.load(Server.MapPath("data.xml"))
set root = xml.documentElement
set nodeLis = root.childNodes
nodeCount = nodeLis.length
nums=int(nodeCount/10)
For i=1 to nums*10-9
set node = nodeLis.nextNode()
next
For i=i to nodeCount
set node = nodeLis.nextNode()
%>
[]:
Next
%>

sendmess.asp

username=request("user")
mess = request("mess")
posttime=mid(date(),6)&" "&time()
if username<>"" then
strSourceFile = Server.MapPath("data.xml")
'获取XML文件的路径这里根据你的虚拟目录不同而不同
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
'创建XML对像
objXML.load(strSourceFile)
'把XML文件读入内存中
Set objRootlist = objXML.documentElement
'选取节点
brstr=chr(13)&chr(10)&chr(9)
'为了插入XML文件中的节点换行空格排列整齐(当然你也可以不用这样只是为了XML数据好看而以)
XMLnode=brstr&""&brstr & _
""&posttime&""&brstr & _
""&username&""&brstr & _
""&mess&""&brstr & _
""&chr(13)
'根据得到的数据建立XML片段
set objXML2=Server.CreateObject("Microsoft.XMLDOM")
'建立一个新XML对像
objXML2.loadXML(XMLnode)
'把XML版片段读入内存中
set rootNewNode=objXML2.documentElement
'获得objXML2的根节点
objRootlist.appendChild(rootNewNode)
'把XML片段插入到List.xml中
objXML.save(strSourceFile)
'存储lsit.xml文件(因为不存储List.xml只在内存中更新了)
set objXML=nothing
set objXML2=nothing
end if
%>

chat.js

// JavaScript Document

//创建对象

function createXMLHttps()
{
var ret = null;
try {
ret = new ActiveXObject('Msxml2.XMLHTTP');
}
catch (e) {
try {
ret = new ActiveXObject('Microsoft.XMLHTTP');
}
catch (ee) {
ret = null;
}
}
if (!ret && typeof XMLHttpRequest != 'undefined')
ret = new XMLHttpRequest();
return ret;
}

//时间函数

function getDataTimes()
{
var strDate,strTime;
strDate = new Date();
strTime = strDate.getTime();
return strTime;
}

//获取信息

function ShowMess()
{
var strtime = getDataTimes();
var xmlhttp = createXMLHttps();
var element = document.getElementById('mess_box');
xmlhttp.open("GET",'mess.asp?strTime='+strtime,false);
xmlhttp.onreadystatechange = function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
element.innerHTML = xmlhttp.responseText;
}
}
xmlhttp.send(null);
}
//发送信息
function SendMess()
{
var strtime = getDataTimes();
var xmlhttp = createXMLHttps();
var element = document.getElementById('mess_box');
var user = document.getElementById('user').value;
var mess = document.getElementById('mess').value;
if (user=="")
{
alert("请输入用户名!");
return false;
}
if (mess=="")
{
alert("不能发空信息!");
return false;
}
xmlhttp.open("GET",'SendMess.asp?user='+user+'&mess='+mess+'&strTime='+strtime,false);
xmlhttp.send(null);
ShowMess();
document.getElementById('mess').value="";

}

// 刷新
function getmess() {
timer = window.setInterval("ShowMess()",2000);
}

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/219138/viewspace-915689/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/219138/viewspace-915689/

你可能感兴趣的文章