我创建了一个jQuery插件,它以对象的形式获取选项。如果我初始化了对象客户端,我会做类似的事情
$(selector).myPlugin({
opt: value,
id: 2,
onclose: function () {},
});
我的功能会将选项解释为
1. {opt: string(value), id: int(2), onclose: function () {}}
但是,插件声明是服务器端的,我使用json_encode
将PHP关联数组转换为插件选项所需的对象。这里的问题是我的插件将声明识别为
2. {opt: string(value), id: string(2), onclose: string(function () {})}
我想知道的是如何以JS将其解释为 1
的方式从PHP传递该关联数组答案 0 :(得分:0)
在将数组编码为JSON之前,将id
值转换为int
:
$opts = array(
'opt' => 'value',
'id' => '2',
'onclose' => 'function() {}'
);
$opts['id'] = (int)$opts['id'];
echo json_encode($opts);
如果你在构造id
数组之前/期间投射$opts
的值,那就更好了。