将jQuery的ajax调用存入数组中

3
我想知道是否有可能将ajax调用返回到JavaScript数组中,而不是DOM对象。 Ajax调用返回类似于值1-值2的n元组,我想遍历它们。

谢谢。

$(function () {
    $("#categoria").change(function() {
        var id = $(this).val();
        alert(id);
        vars = load("getcategoria.php", "q="+id); // can I do something like this? how?
    });
});
3个回答

2
是的,您可以这样做,但是.load()不是正确的方法。 .load()用于将HTML加载到特定的DOM元素中。
我建议您让getcategoria.php返回一个JSON对象(使用PHP的json_encode),然后使用$.getJSON()获取它,解析它,并根据需要使用它。
$.getJSON("getcategoria.php", "q="+id, function(data){
  // data is your JSON object, use it how you wish
});

0

您可以使用jQuery getJSON() 方法返回一个JSON字符串,然后对其进行迭代。

链接页面中的示例展示了如何在检索JSON字符串后对其进行迭代并生成列表。您可以修改此示例以执行自己的迭代和行为。

  $.getJSON('ajax/test.json', function(data) {
  var items = [];

 $.each(data, function(key, val) {
   items.push('<li id="' + key + '">' + val + '</li>');
 });

  $('<ul/>', {
   'class': 'my-new-list',
   html: items.join('')
  }).appendTo('body');
});

0

别忘了在你的getcategoria.php文件中设置header('content-type: application/json')


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接