关于responsetext的信息
为什么WinHttp的ResponseText属性返回乱码
在servlet中设置:response.setCharsetEncoding("UTF-8")或者是GBK试试,还有你的JSP页面是不是UTF-8格式,又或者是你的浏览器的编码设置了其他的编码格式,
为什么responseText返回了整个页面
你的response 要set 它的contextType 为html/text 否则返回的就是带html 代码的数据
另,你的JSP输出不对你写的代码,out.print 最终会编译为servlet其输出的也是带html代码的,应该修改为:
PrintWriter pw=response.getWriter();
response.setContentType("html/text");
pw.write("你要输出的信息放这");
怎样取得xmlHttp.responseText的返回值
var myXmlHttp=createXMLHTTP();
function createXMLDom()
{
var ActiveX = new Array("MSXML2.DOMDocument.5.0","MSXML2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML2.DOMDocument","Microsoft.XMLDOM","MSXML.DOMDocument");
for(var i=0;iActiveX.length;i++)
{
try
{
return new ActiveXObject(ActiveX[i]);
}
catch(e)
{
return document.implementation.createDocument("", "", null);
}
}
return null;
}
///////////通用Ajax查询代码段,采用异步请求方式///////////////
//key为检测的数据内容;path为路径;str1为表名;str2为列名;iFlag为标志变量,决定调用哪个函数;
function ajaxQuery(key,path,str1,str2,iFlag)
{
var domPost;
domPost="rootword"+key+"/wordname"+str1+"/namelist"+str2+"/list/root";
myXmlHttp.open("POST","../system/"+path+"/default.asp",true);
myXmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
//根据iFlag标志变量的值,
switch(iFlag)
{
//检查reg/用户名是否存在
case 0:
myXmlHttp.onreadystatechange=afterChkUser;
break;
}
myXmlHttp.send(domPost);
//tResult=myXmlHttp.responseText;
//return analysisXmlDom(tResult,"result");
}
function afterChkUser()
{
if(myXmlHttp.readyState4)
{
document.getElementById("nameTips").className="msgLoading"; ///////////显示装入图片//////////
document.getElementById("nameTips").innerHTML=msgInfo[5];
}
if(myXmlHttp.readyState==4)
{
var tResult=myXmlHttp.responseText;
tResult= analysisXmlDom(tResult,"result");
if(tResult=="0") /////已经存在
{
var tUserID=document.getElementById("tUserName").value.replace(/(^[\s]*)|([/s]*$)/g,"");
document.getElementById("nameTips").className="msgErrorL";
document.getElementById("nameTips").innerHTML=msgInfo[2]+ "a href='../login/?t="+tUserID+ "' 登录/a";
document.getElementById("tUserName").style.borderColor=colError;
bolFlag[0]=1;
}
else
{
document.getElementById("nameTips").className="msgRight";
document.getElementById("nameTips").innerHTML="";
document.getElementById("msgExtend").style.display="none";
document.getElementById("tUserName").style.borderColor=colFocus;
bolFlag[0]=2;
}
}
}
function analysisXmlDom(domString,domKey)
{
var myDom,rValue;
myDom=createXMLDom();
if(window.ActiveXObject)
{
myDom.loadXML(domString);
rValue=myDom.selectSingleNode("//"+domKey).text;
}
else
{
var myParser=new DOMParser();
myDom=myParser.parseFromString(domString,"text/xml");
rValue=myDom.documentElement.childNodes[0].firstChild.nodeValue;
}
return rValue;
}
function createXMLHTTP()
{
var xmlHTTP=null;
try
{
xmlHTTP=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{//Firefox,Opera,Safari
xmlHTTP=new XMLHttpRequest();
}
return xmlHTTP;
}
后台:
%
ON ERROR RESUME NEXT
dim myDomBack '声明传回前台的DOM
dim myDom,sFlag
SET myDomBack=CreateObject("MSXML2.DOMDOCUMENT")
SET myDom=CreateObject("MSXML2.DOMDOCUMENT")
myDOM.Load Request
myDOMBack.loadxml "rootresult/result/root"
'查询数据库
dim tKeyword,tSheet,tHeader
tKeyword=myDOM.selectSingleNode("//word").text
tSheet=myDOM.selectSingleNode("//name").text
tHeader=myDOM.selectSingleNode("//list").text
If Err.Number0 then
Response.Redirect ""
Response.End
End if
mySQL="SELECT " tHeader " From " tSheet " WHERE " tHeader "='" tKeyword "'"
set myRs=myConn.Execute(mySQL)
If Not myRs.EOF Then
sFlag="0" '查询已存在
Else
sFlag="1"
End If
myDOMBack.selectSingleNode("//result").text=sFlag
myDOMBack.save Response
SET myRs=Nothing
SET myConn=Nothing
SET myDomBack=Nothing
SET myDom=Nothing
%
如何知道xmlhttp的responsetext返回值是什么?
responsetext
返回的值不是1和0,而是获得字符串形式的响应数据
responsetext
不是对象,是xmlhttprequest对象的属性
比如向php文件发送请求后
传回来的数据可以给你用定义xmlhttp这个名字的xmlhttprequest对象接收
你可以这样再发送给需要显示的地方:
document.getelementbyid("需要显示的元素id").innerhtml=xmlhttp.responsetext;
如果是xml文件
就使用responsexml属性
document.getelementbyid("需要显示的元素id").innerhtml=xmlhttp.responsexml;
希望能帮助你
:)
ajax中的xmlhttp.responseText对象是什么意思?
你向ajax后台的程序发送xmlhttp请求的时候,后台程序接到请求会进行处理,处理结束后,可以返回一串数据给前台。
这个就是responseText.一般在后台程序C#中是Response.Write("字符串")php中使用的是echo.就是一个输出字符串而已。