我想知道是否可以将ajax调用返回到javascript数组,而不是DOM对象。 ajax调用返回的值类似于value1-value2的n元组,我想迭代它。
感谢。
$(function () {
$("#categoria").change(function() {
var id = $(this).val();
alert(id);
vars = load("getcategoria.php", "q="+id); // can I do something like this? how?
});
});
答案 0 :(得分:2)
是的,你可以这样做,但.load()
是错误的工作方法。 .load()
用于将HTML加载到特定的DOM元素中。
我建议您让getcategoria.php
返回一个JSON对象(使用PHP的json_encode
),然后使用$.getJSON()
获取它,解析它,并按照您的意愿使用它。< / p>
$.getJSON("getcategoria.php", "q="+id, function(data){
// data is your JSON object, use it how you wish
});
答案 1 :(得分: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');
});
答案 2 :(得分:0)
并且不要忘记在getcategoria.php文件中设置header('content-type: application/json')