gpt4 book ai didi

javascript - PHP对象数组到javascript变量

转载 作者:搜寻专家 更新时间:2023-10-31 21:48:15 25 4
gpt4 key购买 nike

我需要将一个 php 对象数组转换为一个 javascript 变量,以便在“easyautocomplete”插件中使用它。这是我要实现的目标的概要:

从数据库返回的 PHP 对象的 var_dump:

array(223) {
[0]=>
object(stdClass)#5 (9) {
["id"]=>
string(2) "10"
["no"]=>
string(3) "CN1"
["name"]=>
string(10) "Cyclops"
}
[1]=>
object(stdClass)#6 (9) {
["id"]=>
string(2) "11"
["no"]=>
string(3) "CN2"
["name"]=>
string(11) "Professor X"
}
..
..

必需的 javascript 格式:

var characters = {

data: [
{"name": "Cyclops", "id": 1},
{"name": "Professor X", "id": 2}
],

getValue: "name",

list: {

onSelectItemEvent: function() {

var value = $("#character1").getSelectedItemData().id;

$("#character").val(value).trigger("change");
}
}
};

我尝试过的:

var characters = <?php echo json_encode(['data' => $chars]); ?>;

结果:

var characters = {

"data": [
{"id":"10","no":"CN1","name":"Cyclops"},
{"id":"11","no":"CN2","name":"Professor X"}

]};

看起来我几乎已经得到了我需要的结果,但我不知道我将如何追加从 getValue : "name" list: { ..... 开始的剩余属性到字符变量。

此外,生成的变量似乎在“数据”属性周围有双引号,但我不确定这是否会导致问题。

链接到我正在尝试实现的示例:Link

最佳答案

客户端行为应该在客户端,不需要在data上附加任何东西,只需要提供所需的数据集,所有其他字段都可以在js中定义:

var characters = {
data: <?=json_encode($chars)?>,
getValue: "name",
list: {
onSelectItemEvent: function() {
var value = $("#character1").getSelectedItemData().id;
$("#character").val(value).trigger("change");
}
}
};

关于javascript - PHP对象数组到javascript变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50895687/

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