У меня есть простой запрос jquery/ajax к серверу, который возвращает структуру и данные массива. Я задавался вопросом, был ли быстрый путь, которым я могу использовать эту структуру массива и данные с помощью jQuery;
Простой запрос;
var token = $("#token").val();
$.ajax({
type: 'POST', url: './', data: 'token=' + token + '&re=8', cache: false, timeout: 5000,
success: function(html){
// do something here with the html var
}
});
результат (фактический результат print_r PHP (););
Array
(
[0] => Array
(
[username] => Emmalene
[contents] =>
<ul><li class="name">ACTwebDesigns</li><li class="speech">helllllllo</li></ul>
<ul><li class="name">ACTwebDesigns</li><li class="speech">sds</li></ul>
<ul><li class="name">ACTwebDesigns</li><li class="speech">Sponge</li><li class="speech">dick</li></ul>
<ul><li class="name">ACTwebDesigns</li><li class="speech">arghh</li></ul>
)
)
Я думал вроде
var demo = Array(html); // and then do something with the demo var
Не уверенный, если это работало бы, это просто пришло на ум.
Любая справка очень ценится.
Используйте JSON . JSON - это облегченный формат обмена данными, который упрощает передачу данных между разными языками программирования.
Используйте json_encode
в PHP для кодирования ваших данных:
echo json_encode($array);
А в jQuery определите, что результат будет в формате JSON
, и jQuery автоматически проанализирует его как таковой:
$.ajax({
type: 'POST',
url: './', data: 'token=' + token + '&re=8',
cache: false,
timeout: 5000,
dataType: 'json',
success: function(obj) {
// obj is now the same array as JS object:
$.each(obj, function(index, row) {
alert(row.username);
});
}
});
Используйте json_encode () . Он превращает массив в данные JSON, которые можно напрямую использовать в Javascript.
Вы можете использовать json_encode в своем PHP-скрипте. Это вернет данные в кодировке JSON, которые вы можете напрямую использовать в javascript:
$.ajax({
type: 'POST',
url: './',
data: { token: token, re: '8' },
cache: false,
timeout: 5000,
success: function(data){
// data will already be a javascript object that you can manipulate
}
});