如何检查JSON对象键是否具有某个值?如何检查JSON对象键是否具有一定的值
我使用PHP来获取数据和json_encode以获取JSON输出。之后我使用Ajax将结果追加到div中。
我试图做到的,是如果某个键具有一定的价值 - 然后做他们组合在一起:这样的事情:
If Key_Status = "value_Solved" {
// do something
} else If Key_Status = "value_Not_Solved" { {
// do something else
};
我没有收到任何错误,也没有输出。
这是我迄今取得:
$.ajax({
url: "api-json.php?api",
data: {id: idGet},
dataType: "text",
success: function(data) {
var json = $.parseJSON(data);
if (json) {
$.each(json, function(idx, obj) {
//now json variable contains data in obj format
//let's display a few items
var id = obj.task.id;
var customer = obj.task.customer;
var task = obj.task.task;
var status = function(key, val) {
var elm = obj.task.status;
if (elm == 'Solved') {
$("#"+id).css("background", "blue");
console.log("#"+id);
}
};
var solver = obj.task.solver;
var issuer = obj.task.issuer;
var added = obj.task.added;
var label = obj.task.label;
$('#results')
.append(" <div class='board-list-box' id='" + id + "'> <a class='board-list-box-edit'><span class='edit'></span><span class='update'></span><span class='delete'></span><span class='screen-reader-text'>Edit</span></a> <label class='board-list-box-label " + label + "'></label> <p class='board-list-box-text'> " + task + "</p> <span class='board-list-box-info'>" + added + "</span> </div>");
});
} else {
$('#results').html("<p class='error'>" + json + " tasks to do </p>");
}
}
});
我的JSON输出是这样的:
[
{
"task": {
"id": "537",
"task": "Test 1",
"description": "",
"customer": "",
"issuer": "",
"solver": "",
"label": "green",
"status": "Not started",
"deadline": "0000-00-00 00:00:00",
"added": "16-01-24 06:20:55"
},
"comments": "comments",
"labels": "labels"
},
{
"task": {
"id": "538",
"task": "Test 2",
"description": "",
"customer": "",
"issuer": "",
"solver": "",
"label": "green",
"status": "Not started",
"deadline": "0000-00-00 00:00:00",
"added": "16-01-24 06:20:58"
},
"comments": "comments",
"labels": "labels"
}
]
你的方法是有效的(即使它是一个JS对象,而不是JSON),你是否有错误? – MinusFour
提供更好的问题解答。您没有使用传入该函数的参数,并且其他变量从无处出现 – charlietfl
我没有得到任何回报。我更新了我的代码。看上面。这是我如何提取 – Rorabih