2014-09-06 92 views
0

中搜索'728'我是json將它從php編碼回這個js文件,並且我得到不能使用'in'運算符進行搜索。我window.alert(數據),它看起來是正確的。不能使用'in'運算符在

Uncaught TypeError:無法使用'in'運算符在{「0」中搜索'728':{「Name」:「Duncan Davis」,「0」:「Duncan Davis」,「Type」 「,」1「:」學生「},」1「:{」姓名「:」Andrew Mackey「,」0「:」Andrew Mackey「,」類型「:」教授「,」1「:」教授「 ,「2」:{「Name」:「Joe Smith」,「0」:「Joe Smith」,「Type」:「Student」,「1」:「Student」},「3」:{「Name」 「約翰Hightower」,「0」:「約翰Hightower」,「類型」:「教授」,「1」:「教授」},「4」:{「名稱」:「貓收藏家」,「0」類別「:」組「,」1「:」組「,」5「:{」名稱「:」數據庫知識「,」0「:」數據庫知識「,」類型「:」 「 」1「: 」組「}, 」6「:{ 」名稱「: 」字典「, 」0「: 」詞典「, 」類型「: 」書「, 」1「: 」書「},」 7「:{」名稱「:」貓的字典「,」0「:」貓的字典「,」類型「:」書「,」1「:」書「},」8「 「POTATOES字典」,「0」:「土豆字典」,「類型」:「書」,「1」:「書」}}

$(function() { 
$("#login_form").on('submit', function() { 

    var Input = document.test.Input.value; 
window.alert(Input); 

    // use ajax to run the check 
    $.ajax({ 
     url: '../php/DBConnect.php', 
     type: 'POST', 
     data: Input, 
     success: DataReturn, 
     error: function (xhr, status, err) { } 
    }); 

    return false; 
}); 

function DataReturn(Data) { 

    window.alert(Data); 

var tableheader = "<thead><tr><th>Name</th><th>Type</th></tr></thead>"; 

    $('#table').empty(); 

    $('#table').append(tableheader); 

    $.each(Data, function (index, item) { 
     $('#table').append('<tr><td>' 
     + item['Name'] 
     + '</td><td>' 
     + item['Type'] 
     + '</td></tr>'); 
    }); 

} 

});

+5

你的代碼不使用單詞'in',你其實是問?另外:不要使用'window'前綴(它已經是全局作用域),也不''alert':使用'console.log'。 – 2014-09-06 01:28:25

+0

我添加了錯誤。 – user1552172 2014-09-06 01:50:20

+0

您提供的代碼中的哪一行是發生錯誤?你在哪裏使用'in'這個詞? – 2014-09-06 01:52:15

回答

1
$.ajax({ 
    url: '../php/DBConnect.php', 
    type: 'POST', 
    data: Input, 
    success: DataReturn, 
    error: function (xhr, status, err) { } 
}); 

添加dataType: 'json'

$.ajax({ 
    url: '../php/DBConnect.php', 
    type: 'POST', 
    data: Input, 
    dataType: 'json', 
    success: DataReturn, 
    error: function (xhr, status, err) { } 
}); 
+0

這會將我的結果轉換爲[對象對象] – user1552172 2014-09-06 02:15:10

+0

@ user1552172這是一個轉換爲字符串的對象;這就是爲什麼你不使用alert(),而是使用'console.log()'。 – Daedalus 2014-09-06 02:22:11

+0

我只是爲了調試而使用它,現在我把它作爲console.log(),但我試圖讓我的$ .each添加到表中,但它似乎沒有發生$ .each的Item部分。 – user1552172 2014-09-06 02:23:36