读书人

关于responseText返回整个html页的有关

发布时间: 2012-10-20 14:12:47 作者: rapoo

关于responseText返回整个html页的问题
<script language="javascript">
setInterval("vGetRand()",3000);//每秒钟取一次数据 /**


function InitAjax()
{
var ajax=false;
try
{
ajax = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajax = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
ajax = false;
}
}
if (!ajax && typeof XMLHttpRequest!='undefined') {
ajax = new XMLHttpRequest();
}
return ajax;
}

function vGetRand(){

客户端

var url="ajax.aspx";

var ajax=InitAjax();


ajax.open("GET", url,true);


ajax.onreadystatechange = function() {

if (ajax.readyState == 4 && ajax.status == 200)
{
alert(ajax.responseText);
//shenjk.innerText = ajax.responseText;
}
}
//发送空
ajax.send(null);

服务器端
response.writte("aaa")

正常的话我想输出“aaa”但我alert(ajax.responseText);输出的是整个HTML 页呢,我加上response.close()或response.end()都不好用
我该怎么修改啊

[解决办法]
把ajax.aspx页面内<html></html>全部删除掉

ajax.aspx.cs:

Response.clear();
response.write("aaa");
Response.end();

这样获取到的就只有aaa了
[解决办法]
客户端

var url="ajax.aspx?id="qxlks";

var ajax=InitAjax();

服务器端
<%
if request("qxlks")<>"" then
response.writte("aaa")
response.end()
end if
%>
把这段加到语法允许的页面顶部(没有其他HTML代码的地方)
[解决办法]
Page_Load中使用Response.End()结束输出
[解决办法]
学习。
貌似 不能直接传吧。
[解决办法]
请求页面不要出理HTML的东西

读书人网 >Ajax

热点推荐