gpt4 book ai didi

JavaScript XMLHttpRequest.onreadystatechange

转载 作者:数据小太阳 更新时间:2023-10-29 05:04:17 30 4
gpt4 key购买 nike

我正在尝试执行一些 AJAX,并且需要知道为什么这段代码没有触发完成或错误警报。我在 Mozilla Firefox 20.0.1

请注意

这段代码更新数据库(我有一个选择语句读取确切的记录来验证它正在更新)我只是不确定为什么我不能得到响应完成时发出警报。

我有这些 GLOBAL(在 javascript 页面的顶部)声明的变量。

var AjaxEnginePage;
var ClientInfoPage;
var XMLHTTP;
AjaxEnginePage = "AjaxEngine.aspx";
ClientInfoPage="getClientInfo.aspx";

创建连接。

 //Creating and setting the instance of appropriate XMLHTTP Request object to a “XmlHttp” variable  
function CreateXMLHTTP()
{
try
{
XMLHTTP = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(oc)
{
XMLHTTP = null;
}
}
//Creating object in Mozilla and Safari
if(!XMLHTTP && typeof XMLHttpRequest != "undefined")
{
XMLHTTP = new XMLHttpRequest();
}
}

绑定(bind)连接:

function btnUpdateMe_OnClick() {
var me = encodeURIComponent(document.getElementById("MeTextBox").value);

// construct the URL
var requestUrl = AjaxEnginePage + "?Action=UpdateMe&Me=" + me;

CreateXMLHTTP();

// If browser supports XMLHTTPRequest object
if(XMLHTTP)
{
//Setting the event handler for the response
XMLHTTP.onreadystatechange = handleStateChange(me);

//Initializes the request object with GET (METHOD of posting),
//Request URL and sets the request as asynchronous.
XMLHTTP.open("get", requestUrl, true);

//Sends the request to server
XMLHTTP.send(null);
}

处理状态变化

 function handleStateChange(me) {
switch (XMLHTTP.readyState) {
case 0: // UNINITIALIZED
case 1: // LOADING
case 2: // LOADED
case 3: // INTERACTIVE
break;
case 4: // COMPLETED
alert("Success");
break;
default: alert("error");
}

如果需要,我可以提供更多代码。 :( 谢谢。

最佳答案

改变:

XMLHTTP.onreadystatechange = handleStateChange(me);

到:

XMLHTTP.onreadystatechange = function() {handleStateChange(me);};

您正在将 onreadystatechange 设置为调用函数的结果,而不是函数。

关于JavaScript XMLHttpRequest.onreadystatechange,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16369395/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com