我是Javascript和jQuery的新手。这是我的JSON文件。我想在jQuery.each()中添加一个jQuery onclick事件。这是我的代码。
override func viewWillDisappear(_ animated: Bool) {
self.TopConstraint.constant = 0
self.view.layoutIfNeeded()
}
以下代码效果很好
{
"1": [{
"RequestId": "1",
"CustomerId": "1",
"RequestCharge": "100.00",
"Trade": ""
}],
"2": [{
"RequestId": "1",
"CustomerId": "1",
"RequestCharge": "100.00",
"Trade": ""
}],
"3": [{
"RequestId": "1",
"CustomerId": "1",
"RequestCharge": "50.00",
"Trade": ""
}]
}
但是我想添加一个click函数,每个函数都给出i的值。 这是我的代码,但我未定义。
$.each(output, function(i) {
var tr = $('<tr/>');
tr.append("<td>" + output[i][0].RequestId + "-" +"</td>");
tr.append("<td>" + output[i][0].CustomerId + "-" + "</td>");
tr.append("<td>" + output[i][0].RequestCharge + "</td>");
$("#whad").append(tr);
});
这是我的HTML。
$.each(output, function(i) {
var tr = $('<tr/>');
tr.append("<td>" + output[i][0].RequestId + "-" +"</td>");
tr.append("<td>" + output[i][0].CustomerId + "-" + "</td>");
tr.append("<td>" + output[i][0].RequestCharge + "</td>");
$("#whad").append(tr).click(function() {
console.log("This is the value of i clicked: " + this.i)
});
});
我需要this.i来返回单击的值。
答案 0 :(得分:0)
您可以将json解析为对象:
var obj = JSON.parse(text);
然后从对象中检索值:
obj["1"][0].RequestId
如果要全部显示它们,则需要遍历数组并打印所需的值:
for (var i = 0; i<output.length; i++) {
$("#YOURDIV").append("Request id: " + obj[i][0].RequestId);
$("#YOURDIV").append("Customer id: " + obj[i][0].CustomerId);
$("#YOURDIV").append("Request Charge : " + obj[i][0].RequestCharge);
}