jquery下的ajax问题

  在jquery下用$.ajax下的$.parseJSON方法会报这样的错Uncaught SyntaxError: Unexpected token o
  而改用原生的写法再去用$.parseJSON方法却不会这是什么回事
  ////////jquery下的///////
    $(function() {
                $.ajax({
                    type: "get",
                    url: "index.php",
                    cache: false,
                    dataType: "json",
                    success: function(data) {
                        var data = $.parseJSON(data);
                        var html = '';
                        for (var i = 0; i < data.length; i++) {
                            html += '<li><a href="">' + data[i].title + '</a> [<span>' + data[i].date + '</span>]</li>';
                        }
                        document.getElementById("thelist").innerHTML = html;
                    },
                    error: function() {
                        alert("出错");
                    }
                });
            });


  ////////原生下的///////
function ajax(method, url, data, success) {
                var xhr = null;
                try {
                    xhr = new XMLHttpRequest();
                } catch (e) {
                    xhr = new ActiveXObject('Microsoft.XMLHTTP');
                }
                if (method == 'get' && data) {
                    url += '?' + data;
                }
                xhr.open(method, url, true);
                if (method == 'get') {
                    xhr.send();
                } else {
                    xhr.setRequestHeader('content-type', 'application/x-www-form-urlencoded');
                    xhr.send(data);
                }
                xhr.onreadystatechange = function() {
                    if (xhr.readyState == 4) {
                        if (xhr.status == 200) {
                            success && success(xhr.responseText);
                        } else {
                            alert('出错了,Err:' + xhr.status);
                        }
                    }
                }
            }
            ajax('get', 'index.php', '', function(data) {
                var data = $.parseJSON(data);

                var html = '';
                for (var i = 0; i < data.length; i++) {
                    html += '<li><a href="">' + data[i].title + '</a> [<span>' + data[i].date + '</span>]</li>';
                }
                document.getElementById("thelist").innerHTML = html;
            });
  
阅读 2.6k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题