Share the AJAX Sample Code here
主要是想放着到时候自己搞忘记了还有个地方可以找得到,嘿嘿。代码其实很简单,关键在于要明白它里面的含义,我偷懒就没有写Comments在里面了,所以可能会看不太懂,没关系的哈。
通用AJAX对象创建,其实就是创建一个新的XMLHttpRequest对象,这是AJAX技术的最最核心的东东,所有的异步响应都是通过它在后面完成的,无比强大哈。
var ajax;
var oldStatusMsg;
function creatXMLHttpRequest(){
if (window.ActiveXObject){
ajax = new ActiveXObject(”Microsoft.XMLHTTP”);
}
else if (window.XMLHttpRequest){
ajax = new XMLHttpRequest();
}
}
var oldStatusMsg;
function creatXMLHttpRequest(){
if (window.ActiveXObject){
ajax = new ActiveXObject(”Microsoft.XMLHTTP”);
}
else if (window.XMLHttpRequest){
ajax = new XMLHttpRequest();
}
}
OK,下面这段代码包含我这个插件里的代码,所以并不是通用的,不过里面包含了XMLHttpRequest对象的通用调用方法以及如何接受反馈并进行处理。现在我开始有点佩服Javascript的强大了,嘿嘿。总有一天我会爱上它的。
function SaveMe(){
creatXMLHttpRequest();
var e=document.getElementById(”status”);
var tempStatusMsg;
tempStatusMsg=e.value;
e.value=”Posting Data…”;
e.className = “Textformat”;
e.readOnly = true;
e.style.posHeight=e.scrollHeight;
var uri=”your uri here”;
var postStr=”parahere=yes&status=”+tempStatusMsg;
ajax.open(”POST”, uri, true);
ajax.setRequestHeader(”Content-Type”,”application/x-www-form-urlencoded”);
ajax.send(postStr);
ajax.onreadystatechange = function(){
if (ajax.readyState==4)
{if (ajax.status==200)
{
var tempMsg=ajax.responseText;
var tempFlag=tempMsg.split(”|”);
var sucessfulFlag=tempFlag[0];
var timeFlag=tempFlag[1];
if (sucessfulFlag==”1″)
{
var t=document.getElementById(”statustime”);
t.innerText=”Posted on “+timeFlag;
e.Value=”Posted.”;
e.value=tempStatusMsg;
e.style.posHeight=e.scrollHeight;
}
}
}
}
}
creatXMLHttpRequest();
var e=document.getElementById(”status”);
var tempStatusMsg;
tempStatusMsg=e.value;
e.value=”Posting Data…”;
e.className = “Textformat”;
e.readOnly = true;
e.style.posHeight=e.scrollHeight;
var uri=”your uri here”;
var postStr=”parahere=yes&status=”+tempStatusMsg;
ajax.open(”POST”, uri, true);
ajax.setRequestHeader(”Content-Type”,”application/x-www-form-urlencoded”);
ajax.send(postStr);
ajax.onreadystatechange = function(){
if (ajax.readyState==4)
{if (ajax.status==200)
{
var tempMsg=ajax.responseText;
var tempFlag=tempMsg.split(”|”);
var sucessfulFlag=tempFlag[0];
var timeFlag=tempFlag[1];
if (sucessfulFlag==”1″)
{
var t=document.getElementById(”statustime”);
t.innerText=”Posted on “+timeFlag;
e.Value=”Posted.”;
e.value=tempStatusMsg;
e.style.posHeight=e.scrollHeight;
}
}
}
}
}
最近几天看起来总算过得比较充实,本来这一周确实也上班没什么意思,刚好用这样的事情来打发一下时间,嘿嘿。下周就热闹了啦。开心。

