加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 未捕获错误:InvalidStateError:使用AJAX的DOM异常11?

发布时间:2020-12-13 18:21:15 所属栏目:PHP教程 来源:网络整理
导读:我正在运行一个简单的 AJAX请求: function makePages(num) { var conn = new XMLHttpRequest(); conn.onreadystatechange = function() { if (conn.status === 200 conn.readyState === 4) { //error here $('#oldPost').before(conn.responseText); } else
我正在运行一个简单的 AJAX请求:
function makePages(num) {

    var conn = new XMLHttpRequest();

    conn.onreadystatechange = function() {
        if (conn.status === 200 && conn.readyState === 4) {  //error here
            $('#oldPost').before(conn.responseText);
        }
        else{
            return
        }
    }

    conn.open('GET','includes/feedExtra.php?num=' + num);
    conn.send();
}

代码运行正常,PHP返回正确的内容.但是,Chrome的控制台出错:

Uncaught Error: InvalidStateError: DOM Exception 11

它指向这一行:

if (conn.status === 200 && conn.readyState === 4) {

我究竟做错了什么?

错误:
Uncaught Error: InvalidStateError: DOM Exception 11

意味着您要求状态处于错误状态.在readyState为0或1期间,conn.status不可用.

你的问题是当readyState为0和1时你正在使用conn.status.

您需要添加代码以确保在不适当的状态下不查询conn.status,如下所示:

if(conn.readyState === 4 && conn.status === 200){

那么你的代码只会在适当的时候查询conn.status.

参考:

why does this piece of js throw a DOM Exception?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读