我有一个数组名称是dataObj。 dataObj数组有一些对象,但点击复选框后,dataObj数组应为空白并获取新对象。
Any mistake in below code. Thanks for your help
var dataObj = [];
var copyDataObj = [];
dataObj = <?php echo json_encode($travellerDetails); ?>
copyDataObj = dataObj;
$('.checkbox_check').click(function() {
var checkbox_values = [];//all the checked value in this array
$("input[name='airlines']:checked").each( function () {
checkbox_values.push($(this).val());
});
dataObj = [];
for(var i=0;i<=checkbox_values.length;i++){
for(var j=0;j<=copyDataObj.length;j++){
if(copyDataObj[j].operator1 == checkbox_values[i]){
dataObj.push(copyDataObj[j]);//here is the problem
}
}
}
displayResult();
});
copyDataObj [j] = Object { trip_id:“3”, booking_reference:“test123”, 航班:“3”, flight2:“0”, dep_date:“2016-12-30” ... }
我的问题是如何在copyDataObj[j]
数组中推送dataObj
对象?
答案 0 :(得分:2)
将dataObj
初始化为数组[]
而不是字符串。然后你就可以将对象推入其中了:
var dataObj = [];
dataObj.push(copyDataObj[j]);
答案 1 :(得分:0)
您已将dataObj
定义为字符串。它必须是一个能够将项目推入其中的数组。
dataObj = []
答案 2 :(得分:0)
首先将dataObj定义为数组 var dataObj = []; ,但是当您在click函数中清除它时,将其设置为字符串: dataObj =“”; 。应该再次 var dataObj = []; 。