Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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
检查jQueryAjax是否有响应_Jquery_Typeerror_Hasownproperty - Fatal编程技术网

检查jQueryAjax是否有响应

检查jQueryAjax是否有响应,jquery,typeerror,hasownproperty,Jquery,Typeerror,Hasownproperty,我使用jQueryAjax函数在WordPress主题上安装一些演示数据。下面的脚本已经在我以前的主题上工作过了,但是现在由于某种原因我收到了错误消息 未捕获类型错误:无法调用null的方法“hasOwnProperty” 这是我正在使用的脚本 /* Install Dummy Data */ function install_dummy() { $('#install_dummy').click(function(){ $.ajax({ type: "p

我使用jQueryAjax函数在WordPress主题上安装一些演示数据。下面的脚本已经在我以前的主题上工作过了,但是现在由于某种原因我收到了错误消息

未捕获类型错误:无法调用null的方法“hasOwnProperty”

这是我正在使用的脚本

/* Install Dummy Data */
function install_dummy() {
    $('#install_dummy').click(function(){
    $.ajax({
            type: "post",
            url: $AjaxUrl,
            dataType: 'json',
            data: {action: "install_dummy", _ajax_nonce: $ajaxNonce},
            beforeSend: function() {
                $(".install_dummy_result").html('');
                $(".install_dummy_loading").css({display:""});
                $(".install_dummy_result").html("Importing dummy content...<br /> Please wait, this process can take up to a few minutes.");                    
            }, 
            success: function(response){ 
                var dummy_result = $(".install_dummy_result");
                if(typeof response != 'undefined')
                {
                    if(response.hasOwnProperty('status'))
                    {
                        switch(response.status)
                        {
                            case 'success':
                                    dummy_result.html('Dummy Data import was successfully completed');
                                break;
                            case 'error':
                                    dummy_result.html('<span style="color:#f00">'+response.data+'</span>');
                                break;
                            default:
                                break;
                        }

                    }
                }
                $(".install_dummy_loading").css({display:"none"});
            }
        }); 

    return false;
    });
}
install_dummy();
/*安装虚拟数据*/
函数install_dummy(){
$('install#u dummy')。单击(函数(){
$.ajax({
类型:“post”,
url:$AjaxUrl,
数据类型:“json”,
数据:{action:“install_dummy”,_ajax_nonce:$ajaxNonce},
beforeSend:function(){
$(“.install\u dummy\u result”).html(“”);
$(“.install\u dummy\u loading”).css({display:”“});
$(“.install_dummy_result”).html(“导入虚拟内容…
请稍候,此过程可能需要几分钟。”); }, 成功:功能(响应){ var dummy_result=$(“.install_dummy_result”); if(响应类型!=“未定义”) { if(response.hasOwnProperty('status')) { 开关(响应状态) { 成功案例: dummy_result.html(“虚拟数据导入已成功完成”); 打破 案例“错误”: dummy_result.html(“”+response.data+“”); 打破 违约: 打破 } } } $(“.install\u dummy\u loading”).css({display:“none”}); } }); 返回false; }); } 安装_dummy();
任何帮助都将不胜感激

if(typeof response != 'undefined')
这意味着:“有一个叫做‘响应’的变量吗?”。由于您将其作为函数参数接收,因此存在一个名为
response
的变量

变量的存在并不意味着它不能为
null
。在这里,
response
已定义/存在,但它是
null
。当你说:

if(response.hasOwnProperty('status'))
您试图在空值上调用
hasOwnProperty
,因此会得到该异常。你必须做到:

if (response !== null && response.hasOwnProperty(..)) { ... }

如果您使用chrome开发工具并转到控制台,您可以通过以下方式查看成功函数返回的内容:success:function(response){console.log(response);…}感谢skukx,我记录了对colsole的响应,它返回了“null”。我将不得不挖掘deaper,因为肯定发生了其他事情。这意味着服务器响应为null。这意味着这是服务器端的问题。