javascript - 将 php 数组传递给 Ajax/jQuery

标签 javascript php jquery ajax jquery-ui

大家好,我知道关于这个主题有一些结果,但我并没有尝试做任何太高级的事情,只是试图了解基础知识。出于某种原因,此代码警报有效并打印出正确的数组信息,但我似乎无法让它为自动完成工作? https://jqueryui.com/autocomplete/

var oReq = new XMLHttpRequest(); //New request object
oReq.onload = function() {
    var res = oReq.responseText;
    AC(res);
};
oReq.open("get", "get-data.php", false);
oReq.send();

function AC(res){
$(function() {
    alert(res);
    $( "#tags" ).autocomplete({
      source: res
    });
});
}

所以 alert(res) 在函数 AC() 中工作,但它仍然没有填充源?

我的 get-data.php 看起来像这样

<?php $arr = array("ActionScript",
      "AppleScript",
      "Asp");

echo json_encode($arr); ?>

即使我必须查找更多信息,我也会很感激任何指导

最佳答案

JSON.javascript 中的反序列化。

source: JSON.parse(res);

发生这种情况是由于未解码 JSON。 JSON 作为字符串到达​​,因此 alert() 可以正常工作以显示接收到的数据,但是当您发布到源时,您必须发布对象 - 需要将字符串解码为对象。 ;) 结果代码:

var oReq = new XMLHttpRequest(); //New request object
oReq.onload = function() {
    var res = oReq.responseText;
    AC(res);
};
oReq.open("get", "get-data.php", false);
oReq.send();

function AC(res){
$(function() {
    alert(res);
    $( "#tags" ).autocomplete({
      source: JSON.parse(res)
    });
});
}

HTH

关于javascript - 将 php 数组传递给 Ajax/jQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30691442/

相关文章:

使用 map/reduce/filter 优化 Javascript 脚本

用于开发的 jQuery 重复(克隆?)HTML

jquery - 当翻转切换器进入 jquery mobile 中的开启状态时如何提交表单

javascript - 如何加载另一个页面onclick of appended div

php - Sublime Text 语法将特定的 php 文件突出显示为 js 文件

php - 统计用户评论的回复数

php - 使用 ZEND 服务器在 PHP 中将 PDF 转换为 JPEG

javascript - 在 Parse 中检索 objectId

javascript - 相同的元素在溢出时具有不同的滚动高度。原因是什么?我该如何解决?

php - 如何将php变量插入到oracle表中?