Ajax-----簡易聊天室實戰
img
chat.asp
chat.css
chat.js
data.xml
index.html
mess.asp
sendmess.asp
主要看chat.js mess.asp sendmess.asp
data.xml:
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 & _
"
"
"
'根據得到的資料建立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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- FastAPI實戰:簡易MockServeASTAPIMock
- Node TCP /UDP 簡易聊天室TCPUDP
- Python基於Socket實現簡易多人聊天室Python
- 使用Android網路程式設計實現簡易聊天室Android程式設計
- 實戰swoole【聊天室】
- uniapp專案實踐總結(十五)使用websocket實現簡易聊天室APPWeb
- [譯]用Golang編寫一個簡易聊天室Golang
- 入門 go 隨手寫了個簡易聊天室Go
- Java實現簡易聯網坦克對戰小遊戲Java遊戲
- MySQL 5.5升級5.6 單例項簡易實戰MySql單例
- 基於express和socket.io的超簡易版聊天室Express
- namedtuple簡易實現
- Java介面程式設計實戰(一)——簡易QQ登入介面Java程式設計
- Go語言專案實戰:多人聊天室Go
- SpringBoot 實戰 (十七) | 整合 WebSocket 實現聊天室Spring BootWeb
- 簡易版 vue實現Vue
- Netty高階應用及聊天室實戰Netty
- ??Java開發者的Python快速進修指南:實戰之簡易跳錶JavaPython
- 簡易實現一個expressExpress
- 簡易RPC框架實現RPC框架
- WinForm的Socket實現簡單的聊天室 IMORM
- PHP實現最簡單的聊天室應用PHP
- 實戰WebSocket聊天室:從開發到部署上線Web
- 用node實現一個簡單的聊天室——websocket實踐Web
- 實現一個簡易版WebpackWeb
- 實現一個簡易的vueVue
- Go 實現簡易 RPC 框架GoRPC框架
- UNIX Domain Socket實現簡易聊天AI
- 學習Promise && 簡易實現PromisePromise
- 模擬實現簡易版shell
- QT實現簡易串列埠助手QT串列埠
- 簡易執行緒池實現執行緒
- Netty網路聊天(一) 聊天室的實戰(最易懂)Netty
- 讓動畫實現更簡單,Flutter 動畫簡易教程!動畫Flutter
- 簡易實現Redis監控自動簡訊告警Redis
- SignalR簡版web聊天室(實現過程分析篇)SignalRWeb
- 實現一個簡單的視訊聊天室(原始碼)原始碼
- 實現一個簡單的語音聊天室(原始碼)原始碼