#2
yjq19842008-08-25 11:34
asp我不懂
|
以下是一段 在线留言的AJAX 应用,但是 不知道哪里的问题,提示只停留在 “正在保存留言...”
[bo]home.asp [/bo]页面
<span id="book_err"></span><br>
<textarea name="message" id="message"></textarea> <br />
<input type="submit" name="btnOK" id="btnOK" value="提交留言" onclick="sendinfo(document.getElementById('message').value);"/>
[bo]AJAX.页面[/bo]
function sendinfo(message){
var xmlhttp;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e){
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function(){
if (xmlhttp.readyState==4){
if (xmlhttp.status==200){
var data=xmlhttp.responseText;
book_result(data);
}
else{
document.getElementById("book_err").innerHTML="<font color='red'>留言失败,请联系管理员</font>";
}
}
else{
document.getElementById("book_err").innerHTML="<font color='blue'>正在保存留言...</font>";
}
}
xmlhttp.open("post", "booksave.asp", true);
xmlhttp.setRequestHeader('Content-type','application/x-www-form-urlencoded');
xmlhttp.send("message="+escape(message));
}
//---------------------------------- AJAX 博客留言 信息添加状态----------------------------------
function book_result(data){
if(data==0){document.getElementById("book_err").innerHTML="<img src='../images/yesno.gif'/> 留言保存失败,请联系管理员";}
if(data==1){document.getElementById("book_err").innerHTML="<img src='../images/yesok.gif'/> 留言保存成功";}
if(data==2){document.getElementById("book_err").innerHTML="<img src='../images/yesno.gif'/> 你尚未登陆,请先登陆再留言";}
if(data==3){document.getElementById("book_err").innerHTML="<img src='../images/yesno.gif'/> 本系统不允许给自己留言";}
}
[bo]booksave.asp[/bo]
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include file="../conn.asp"-->
<!--#include file="../CodePage.asp"-->
<%
if loginuserID<>"" then'判断用户是否已经登陆
'登陆成功用户继续执行以下操作
if loginuserID=myID then '如果登陆用户是博客所有者
response.Write(3)'输出不能给自己留言的警告标识
else'
'执行留言添加动作
message=trim(request.Form("message"))
strsql="insert into blog_book(userID,message) values("&loginuserID&",'"&message&"')"
call Table_Insert(strsql)
if err then
response.Write(0)'添加失败标记
else
response.Write(1)'添加成功标记
end if
'
end if
else'如果没有登陆,输出未登陆标记2
response.Write(2)
end if
%>