ajax 返回值为undefined 问题

今天遇到的,发出来,说不定啥时候再遇到了.

先放上ajax请求方法.

参数 fun 为处理返回结果的方法.

function test( fun) {     
    $.ajax({
        url: 'Default.aspx,
        type: 'post',
        dataType: 'text',
        error: function (msg) {
            fun("110");
        },
        success: function (msg) {
            alert("err");
        }
    });
}

为了演示 ,加上了 System.Threading.Thread.Sleep(3000);

请求页面的返回值 为 "[{a:1,b:2,c:3}]"

页面上js方法如下:

<script type="text/javascript">

    var s = function (msg) {
        msg = eval("(" + msg + ")");
        alert(msg[0].b);
    }
    test(1, s);
</script>

  现在就可以得到结果了.

原文地址:https://www.cnblogs.com/volkd/p/2126683.html