注册 登录
编程论坛 jQuery论坛

xmlhttp.send()为什么没有用

mextb1860 发布于 2006-12-15 14:44, 1701 次点击

为什么xmlhttp.send()调用的时候xmlhttp.readyState是1.. 就是没用调用send()方法.但是我明明调用了的。...
只有当我刷新一下的时候就可以成功.xmlhttp.readyState的值是4
我的代码如下。 .
<script type="text/javascript">


var http_request = false;

function send_request(url) {//初始化、指定处理函数、发送请求的函数

http_request = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) { //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {//设置MiME类别
http_request.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject) { // IE浏览器
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
//http_request.onreadystatechange = processRequest;
// 确定发送请求的方式和URL以及是否同步执行下段代码
http_request.open("GET", url, true);
http_request.send(null);
if (http_request.readyState==4 || http_request.readyState=='complete' ){
var divv2 = document.getElementById("divv2");
divv2.innerHTML = http_request.responseText;
}
}
</script>

1 回复
#2
rainic2006-12-16 20:39

<script type="text/javascript">
var http_request = false;
function send_request(url) {//初始化、指定处理函数、发送请求的函数
http_request = false;
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest) { //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType) {//设置MiME类别
http_request.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject) { // IE浏览器
try {
http_request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
// 确定发送请求的方式和URL以及是否同步执行下段代码
http_request.open("GET", url, true);
http_request.send(null);
http_request.onreadystatechange = processRequest;
}

function processRequest {
if (http_request.readyState==4 || http_request.readyState=='complete' ){
if (http_request.status == 200){
var divv2 = document.getElementById("divv2");
divv2.innerHTML = http_request.responseText;
}
}
</script>


这样试试
GET方法在URL相同时,有时会不行的,好象因为浏览器缓存。。。

1