我正在处理我的第一个(EVER!)JSON 项目,我想知道如何从 JSON 对象获取特定数据。我已经将其导入,并且刚刚发现(感谢堆栈溢出!)如何引用该数据。我现在能够做到这一点,下面的代码就是我所得到的。我有一堆通过数据的警报。我现在需要做的实际上是循环遍历并评估下面显示的 JSON 的 value 字段。我不知道如何选择它,以及如何循环它。我已经尝试过 data.films.value.value 和 data.films.value.value[0] 之类的东西,我敢肯定它接近那个,但我不知道如何获取数据成一种形式,让我可以像使用常规字符串一样使用该特定元素。我最终想做的是比较每部电影。
{
"
films": [{
"label": "34",
"value": "34",
"currently_streaming": "1",
"full_streaming_url": "http://www.url.com",
"url": "http://www.url.com"},
{
"label": "A Different Color",
"value": "A Different Color",
"currently_streaming": "1",
"full_streaming_url": "http://www.url.php",
"url": "http://www.url.com"}]
}
这是加载它的代码。它返回成功,但我无法从 JSON 对象中获取任何数据:
$(document).ready(function(){
$.ajax({
dataType: 'json',
beforeSend : function() {
console.log('Before Ajax Request Starts !!');
},
success: function(data) {
console.log(data);
alert("Edddddddd");
$.each(data.films, function(i, object) {
$.each(object, function(property, value) {
alert(property + "=" + value);
});
});
},
error : function(jqXHR, textStatus, errorThrown) {
alert("Error occurred: " + errorThrown);
},
beforeSend : function() {
console.log('Ajax Request Complete !!');
},
url: 'test.php'
});
});
非常感谢任何和所有帮助!
更新 我现在正在尝试使用我从这里的每个人那里得到的很好的建议来循环。这就是我现在所拥有的:
var test="34x25x36";
$(document).ready(function(){
$.ajax({
dataType: 'json',
beforeSend : function() {
console.log('Before Ajax Request Starts !!');
},
success: function(data) {
console.log(data);
alert("Edddddddd");
$.each(data.films, function(i, object) {
$.each(object, function(property, value) {
//alert(property + "=" + value);
for (i=0; i<data.films.length; i++){
var theFilm = (data.films[i].value);
if (theFilm === test){
document.write("Your movie is hot");
document.write(theFilm);
}
else {
}
}
});
});
},
error : function(jqXHR, textStatus, errorThrown) {
alert("Error occurred: " + errorThrown);
},
beforeSend : function() {
console.log('Ajax Request Complete !!');
},
url: 'test.php'
});
});
当我尝试从循环中打印出来时,它似乎可以工作,但我遇到了问题。我最终需要将此数据与一些用户输入进行比较,我在顶部将其定义为 var test 用于测试目的。我希望它比较每个要测试的变量,但由于某种原因,它似乎是在设置要测试的每个变量。我的循环有问题吗?