EDIT: Tôi đã nhận được huy hiệu "câu hỏi nổi tiếng" với câu hỏi này, vì vậy tôi figured tôi muốn trở lại với nó và dính những gì đã xảy ra với tôi ngay tại đầu rất tippy cho những người tìm kiếm nó để có được một câu trả lời ngay lập tức.jQuery.getJSON và jQuery.parseJSON trả về [đối tượng đối tượng]?
Về cơ bản, tôi mới sử dụng JSON. JSON là một đối tượng (rõ ràng), vì nó chứa tất cả các loại công cụ! Vì vậy, tôi đã được như "Hey, javascript, chỉ cần bật lên một cảnh báo với tất cả các dữ liệu JSON này", hy vọng nó sẽ cho tôi dữ liệu JSON như là một chuỗi. Nhưng javascript không làm điều đó (tốt!), Vì vậy nó giống như "Này, đây là cách chúng ta hiển thị các đối tượng, [đối tượng Object]".
Những gì tôi có thể làm là một cái gì đó như alert(obj.DATA[0][1])
và nó sẽ cho tôi thấy rằng bit của đối tượng.
Điều tôi thực sự muốn là xác minh rằng tôi đang tạo dữ liệu JSON tốt, mà tôi có thể đã kiểm tra với JSON.stringify
.
Dù sao, hãy quay lại câu hỏi thường xuyên được lên lịch của chúng tôi!
Tôi đang cố gắng lấy một số dữ liệu JSON có cuộc gọi ajax, nhưng jQuery dường như không thích JSON của tôi.
nếu tôi làm điều gì đó như:
function init2() {
alert("inside init2");
jQuery.ajax({
url: "/Mobile_ReportingChain.cfm",
type: "POST",
async: false,
success: function (data) {
alert(data);
var obj = jQuery.parseJSON(data);
alert(obj);
}
});
}
tôi có được điều này, kể từ alert (dữ liệu):
{"COLUMNS":["MFIRST_NAME","MLAST_NAME","MMDDL_NAME","MEMPLY_ID","MAIM_NBR","EMPLY_ID"],
"DATA":[
["FNAME1 ","LNAME1 ","MI1 ","000-14-7189","026-0010","000-62-7276"]
,["FNAME2 ","LNAME2 ","MI2 ","000-01-2302","101-1850","000-14-7189"]
,["FNAME3 ","LNAME3 ","MI3 ","000-91-3619","102-1000","000-01-2302"]
,["FNAME4 ","LNAME4 ","MI4 ","000-25-9687","102-1000","000-91-3619"]
]}
mà JSONLint nói là json hợp lệ. alert (obj) mang lại cho tôi này, tuy nhiên:
[object Object]
thêm dataType: "json"
hoặc "text json"
chỉ làm cho nó thông báo [object Object]
tại alert(data)
.
Tôi thực sự muốn tìm hiểu điều này, có ai biết tại sao nó làm việc này không? Tôi khá mới ở jQuery, mục tiêu của tôi là lấy một mảng cho mỗi cột. Mã tôi đang sử dụng đã làm việc trên một trang khác, có vẻ như điều làm tôi phiền lòng nhất.
Bạn đang chuyển đổi nó vào một đối tượng và sau đó gọi cảnh giác với đối tượng đó. Sau đó nó nói hey đây là một đối tượng. Tất cả mọi thứ đang làm việc như nó nên :) –