I have a function that has to receive data from DB on Server and push it into the array. That is:
function Preload() {
var valueToPush = {};
var userID1 = '<?php echo $id_user;?>';
$.ajax({
url: 'TR.php',
type: 'POST',
data: {
userID1: userID1
},
success: function(data) {
var names = data
$('#result_div_id').html(data);
var json2 = $.parseJSON(data);
EntriesCount = json2.length;
$(json2).each(function(i, val) {
$.each(val, function(k, v) {
switch (k) {
case 'Name':
valueToPush.Name = v;
case 'Phone':
valueToPush.Phone = v;
}
name2.push(valueToPush);
});
});
currententry = 0;
}
});
}
}
But this code is adding an only one entry in array. Other entries are undefined... What I am doing wrong?
I guess you are pushing to name2 on the wrong place. You should do this on the first iteration.
Edit: after getting an example of your JSON i guess the second iteration is not needed after all. So I rewrote my final code below.
The final code would be like this:
function Preload() {
var userID1 = '<?php echo $id_user;?>';
$.ajax({
url: 'TR.php',
type: 'POST',
data: {
userID1: userID1
},
success: function(data) {
var names = data;
$('#result_div_id').html(data);
var json2 = $.parseJSON(data);
EntriesCount = json2.length;
$.each(json2, function(i, val) {
var valueToPush = {
Name: val.Name,
Phone: val.Phone
};
// if you want to copy all values just do
// name2.push(val);
name2.push(valueToPush);
});
currententry = 0;
}
});
}
}
To Pedro Valentim:
My JSON is:
[{"ID_Clients":"87","Name":"\u0412\u0430\u0441\u044f","Phone":"1234578","Status":"4","Birthday":"2016-10-21","ClientFrom":"4","User":"2"},{"ID_Clients":"88","Name":"\u041f\u0435\u0442\u044f","Phone":"2345669","Status":"3","Birthday":"2016-10-11","ClientFrom":"2","User":"2"},{"ID_Clients":"89","Name":"\u0410\u043d\u0442\u043e\u0448\u043a\u0430","Phone":"7897574","Status":"3","Birthday":"2016-10-01","ClientFrom":"2","User":"2"},{"ID_Clients":"142","Name":"888","Phone":"8","Status":"7","Birthday":"0000-00-00","ClientFrom":"3","User":"2"},{"ID_Clients":"143","Name":"9998888555","Phone":"6","Status":"5","Birthday":"0000-00-00","ClientFrom":"1","User":"2"},{"ID_Clients":"145","Name":"333","Phone":"6","Status":"3","Birthday":"0000-00-00","ClientFrom":"3","User":"2"},{"ID_Clients":"146","Name":"66","Phone":"66","Status":"1","Birthday":"2016-11-16","ClientFrom":"1","User":"2"},{"ID_Clients":"151","Name":"\u0412\u0430\u0441\u044f","Phone":"1234578","Status":"8","Birthday":"2016-10-03","ClientFrom":"1","User":"2"},{"ID_Clients":"158","Name":"999","Phone":"999","Status":"2","Birthday":"2001-12-12","ClientFrom":"2","User":"2"},{"ID_Clients":"194","Name":"NEW CLIENT","Phone":"+7936000344","Status":"1","Birthday":"2016-11-02","ClientFrom":"1","User":"2"},{"ID_Clients":"195","Name":"NEW CLIENT","Phone":"+7936000344","Status":"1","Birthday":"2016-11-02","ClientFrom":"1","User":"2"},{"ID_Clients":"196","Name":"NEW CLIENT","Phone":"+7916120648","Status":"1","Birthday":"2016-11-02","ClientFrom":"1","User":"2"}]
and now i will try to fix the array pushing place. Thanx a lot!