所以我目前正在使用这个网站应用程序,我试图使用大学网站和AJAX中的JSON来显示我的大学有多少个PC可用。我无法弄明白,但是它显示了第一个房间的所有MAC,然后它的说法未定义给其他人,它的所有代码块,所以我无法看到它出错的地方任何建议都会很棒。
JS:
var container = $('div.container');
$('input#get').click(function(){
$.ajax({
type: 'GET',
url: '(mylink)',
dataType: 'jsonp',
success: function(data) {
$.each(data, function(index, item) {
$.each(item, function(key, value) {
container.append('<div class="pcsinside">' + value.displayName + '</div>' + 'PCs available:' + ' ' + value.availPCs + ' ' + 'out of' + ' ' + value.numPCs + '<br/>' + 'Macs available:' + ' ' + value.availMacs + ' ' + 'out of' + ' ' + value.numMacs + '<br/>');
});
});
}
});
})
HTML:
<div class="container">
<div id="form-area">
<input id="get" type="submit" value="Press For PC Availability">
</div>
<div class="pcsinside">
</div>
</div>
&#13;
这就是它的样子,只要PC更改了PC和MAC(除了未定义的PC),它就会更新。
它适用于第一个但不适用于其他MAC,最新情况如何?任何帮助都会非常感谢员工。
答案 0 :(得分:0)
首先在dataType中放入'jsonp'而不是'json'。 S Jayesh是对的,你必须通过字符串来看答案。见这个例子。
$.ajax({
url: "blabla.php",
data: data,
type: 'POST',
contentType: "application/x-www-form-urlencoded",
dataType: 'json',
error: function(data){
var err = JSON.stringify(data);
alert(err);
},
success: function(data){
var succ = JSON.stringify(data);
alert(succ);
}
});
通过该结构,您将看到问题所在。使用post而不是get,它会更好。
答案 1 :(得分:-2)
要将JSON显示为字符串,您需要使用JSON.stringify()
函数:
container.append('<div>'+ JSON.stringify(value.displayName) +'</div>');