我想将数据附加到html,但在jquery中使用每个函数之外的数组变量。
var prod_id, prod_name, prod_price;
var data_array = [];
$.ajax({
type: "GET",
url: "<?php echo base_url('main/fcuk'); ?>",
dataType: "json",
cache: false,
success: function(data, st) {
$.each(data.data, function(i, obj) {
obj = {
prod_id: obj.prod_id,
prod_name: obj.prod_name
}
data_array = obj;
});
console.log(data_array); // I will AppendTo an html element or selector here
}
});
答案 0 :(得分:2)
您需要推送方法,截至目前,您将变量data_array
重新分配给obj
对象。
$.each(data.data, function (i, obj) {
obj = {prod_id: obj.prod_id, prod_name: obj.prod_name}
data_array.push(obj);
});
console.log(data_array
或者,您可以使用jQuery.map()
将数组或对象中的所有项目转换为新的项目数组。
data_array = $.map(data.data, function (obj) {
return {prod_id: obj.prod_id, prod_name: obj.prod_name};
});
console.log(data_array)
注意:如果要将其附加到HTML,则创建有效的HTML并附加生成HTML或使用各种表/网格插件。