Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在javascript xhr请求函数上显示/隐藏html元素_Javascript_Jquery_Xmlhttprequest_Loading - Fatal编程技术网

在javascript xhr请求函数上显示/隐藏html元素

在javascript xhr请求函数上显示/隐藏html元素,javascript,jquery,xmlhttprequest,loading,Javascript,Jquery,Xmlhttprequest,Loading,我有一个Single html元素,我需要通过jquery将其显示并隐藏到纯javascript xhr请求方法中,因为现在当请求完成/成功时,它总是显示该元素而不隐藏,如果出现错误,我想再次隐藏该元素 html 问题是,我总是通过$.ajax()语句(error、success、beforeSend)来实现这一点,这次我有纯javascript xhr请求,我不知道如何实现这一点 更清楚地说,我希望将其转换为xhr javascript,如图所示: $.ajax({ /*data etc ..

我有一个Single html元素,我需要通过jquery将其显示并隐藏到纯javascript xhr请求方法中,因为现在当请求完成/成功时,它总是显示该元素而不隐藏,如果出现错误,我想再次隐藏该元素

html

问题是,我总是通过$.ajax()语句(error、success、beforeSend)来实现这一点,这次我有纯javascript xhr请求,我不知道如何实现这一点

更清楚地说,我希望将其转换为xhr javascript,如图所示:

$.ajax({
/*data etc ...*/
error:function(){
$('.ajax-loading').show();
},
success:function(){
$('.ajax-loading').hide();
},
beforeSend:function(){
$('.ajax-loading').show();
}
});
编辑

我也尝试过,但没有成功:

function get(_url, _callback){
  var xhr = createCORSRequest('GET',_url);
  if (!xhr){
    throw new Error('CORS not supported');

  }


  xhr.send();
  xhr.onreadystatechange = function() {
        if(xhr.readyState == 4 /*COMPLETE STATEMENT*/){
            alert(xhr.readyState);
        }
};
  /*SUCCESS -- do somenthing with data*/
  xhr.onload = function(){
    // process the response.
    _callback(xhr.responseText);

  };

  xhr.onerror = function(e){
    console.log(e);
  };
}
勾选这个:

在xmlHTTPRequest中,您必须检查对象的状态,以了解请求的进展情况。

检查此项:

在xmlHTTPRequest中,您必须检查对象的状态,以了解请求发生了什么。

修复了

xhr.onloadstart = function(){
       $('.ajax-loading').show();
  }

  xhr.onloadend = function(){
      $('.ajax-loading').hide();
  }
固定

xhr.onloadstart = function(){
       $('.ajax-loading').show();
  }

  xhr.onloadend = function(){
      $('.ajax-loading').hide();
  }

好的,但我是新手,object的语句我可以在其中阅读所有的语句,那么我就不会使用xhr。open()了。我对这个tooTry感到非常困惑,这一个看起来很有描述性:而且,如果你想深入挖掘:好的,看到了,谢谢,我要编辑我的问题,因为它无论如何都不起作用:(如果我没记错的话,您必须在open()和send()方法之前定义所有内容。此外,您还需要在send()之前定义open()方法,这是实际的请求-我已经为此使用jQuery多年了。顺便问一下,您的目标是什么?=)好的,但我是新手,object的语句我可以在其中阅读所有的语句,那么我就不会使用xhr。open()了。我对这个tooTry感到非常困惑,这一个看起来很有描述性:而且,如果你想深入挖掘:好的,看到了,谢谢,我要编辑我的问题,因为它无论如何都不起作用:(如果我没记错的话,您必须在open()和send()方法之前定义所有内容。此外,您还需要在send()之前定义open()方法,这是实际的请求-我已经为此使用jQuery多年了。顺便问一下,您的目标是什么?=)建议:您应该仅在类
xhr.onsomeeventname=someFunction
语句之后调用
send
方法建议:您应该仅在类
xhr.onsomeeventname=someFunction
语句之后调用
send
方法
xhr.onloadstart = function(){
       $('.ajax-loading').show();
  }

  xhr.onloadend = function(){
      $('.ajax-loading').hide();
  }