在jQuery插件初始化中使用PHP变量?

时间:2014-04-20 05:56:36

标签: javascript php jquery

我有一个jQuery图库插件,我正在整个网站中广泛使用,我正在构建PHP模板。在插件初始化的属性中,除了少数例外,大多数值在整个站点中保持不变。在这些情况下,我想知道我是否可以通过PHP传递属性的值;例如如果在某些情况下有一个名为“thumbnailsVisible”的属性,我会希望此设置为true,而在其他情况下,则为false。因此,将值赋给相应的变量并在模板中的jQuery初始化中包含以下内容是否有任何问题:

thumbnailsVisible : <?php echo $thumbnailsVisible; ?>

我意识到我也可以在js文件中外化初始化并根据需要创建不同的版本,但如果这种方法没有任何问题,这会更简单...

此外,如果有一种完全不同的方法是最佳的,我会感激任何形式的帮助。感谢。

2 个答案:

答案 0 :(得分:2)

是。你可以这样做。

PHP在服务器端处理,仅在处理完成后发送给客户端。

你可以编写一个php脚本来返回JavaScript并传入一个参数。

例如

<?php
$thumbnailVisible = isset($_GET['showthumb']) ? $_GET['showthumb'] : 'false';
?>
$.func({
    thumbnailsVisible: <?php echo $thumbnailVisible; ?>
});

如果它无法正常使用,请尝试使用content-type指定header()

header('Content-type: application/javascript');

将它放在PHP脚本的顶部。

答案 1 :(得分:1)

是的,你可以这样做,实际上我经常遇到这种情况而且我通常会这样做。 您可以查看代码here: (虽然这是基于codeIgniter)