gpt4 book ai didi

php - 使用 PHP 数组实现 jQuery 自动完成

转载 作者:行者123 更新时间:2023-11-30 10:27:56 26 4
gpt4 key购买 nike

我有一个 guest 列表,我希望能够在 jQuery 自动完成中使用这些列表,但我似乎无法获得正确的格式。我正在使用 CakePHP 2.3.8 并从我的 Controller 发送 guest 列表以供查看。当我在文本框中输入时,出现以下错误

//in reference to source of the elements to populate the autocomplete list
Property 'source' of object [object Object] is not a function

我在这里搜索了这个错误,但我找不到任何与转换 PHP 数组相关的信息,同时还要考虑该项目的索引号。我有一个 PHP 数组,格式为

echo "<pre>"; print_r($guest_list); echo "</pre>"; 
//results in the following, where the index is the guest's ID
array(
[1] => guest a,
[2] => guest b,
[3] => guest c
)

请记住,索引是指客人的 ID。

我使用 json_encode 将 php $guests 数组转换为以下格式

var guests = {"1":"guest a","2":"guest b","3":"guest c"};

我在文档中注意到数据源的格式通常如下

var guests = [guest_a, guest_b, guest_c];

记住索引是指客人的ID,所以我需要使用这个号码来确保选择正确的客人,如果碰巧有两个客人同名

所以,这是自动完成框的 javascript/jquery

var guests = <?php echo json_encode($guest_list); ?>;
$(function() {
$( "#guests_autocomplete" ).autocomplete({
source: guests
});
});

我怎样才能正确地格式化我的客人数组以使用自动完成并仍然跟踪客人的 ID?

最佳答案

使用

var guests = ["<?php echo  implode('","',$guest_list); ?>"];

代替

var guests = <?php echo json_encode($guest_list); ?>;

如果 guest 姓名是唯一的,您可以使用array_search 来查找 id

关于php - 使用 PHP 数组实现 jQuery 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18686731/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com