0

我有以下代码。它为戏剧工作,但我认为真假正以“真”和“假”的形式回归。

var superslider_play = "<?php get_option_tree( 'superslider_play', '', 'false' ); ?>"
var superslider_pagination = "<?php get_option_tree( 'superslider_pagination', '','false' ); ?>"

$('#superslider_home').superslides({
    play: superslider_play, // Milliseconds for delay
    pagination: superslider_pagination
});

我试过使用 json_encode().replace("\"","\\\"")但似乎没有任何效果。任何帮助将不胜感激。

4

4 回答 4

4

您已经硬编码了外部的引号<?php ...?>

var superslider_pagination = "<?php get_option_tree( 'superslider_pagination', '','false' ); ?>"
// remove the double quotes -^-----------------------------------------------------------------^

假设您希望结果为:

var superslider_pagination = true;
// OR
var superslider_pagination = false;

...当浏览器将其视为 JS 时。

于 2013-06-22T03:44:34.853 回答
1

If you want to pass the argument as bool (true or false) then no need to use quotes. Instead of:

<?php get_option_tree( 'superslider_pagination', '','false' ); ?>

Try this:

<?php get_option_tree( 'superslider_pagination', '',false); ?>
于 2013-06-22T04:03:39.103 回答
0

试试这个<?php echo get_option_tree( 'superslider_play', '', 'false' ); ?>"你没有返回函数。这个对象返回的数据类型是什么(更多帮助)?

于 2013-06-22T03:45:46.480 回答
0

这些值显示为“true”和“false”,因为您在 php 标记之前和之后使用引号。

以下代码:

var a = <?php echo "hola"; ?>   ; //  
var b = "<?php echo "hola"; ?>" ; //  

会输出

var a = hola ;
var b = "hola" ;

关于您尝试使用 json_encode,也许您忘记了回显。

<?php 
json_encode(true); // prints nothing
echo json_encode(true); // prints true
?>

在我看来,应该使用 json_encode 函数。一般来说,我会选择:

<?php
function get_option_tree($a,$b,$c) {
        return true;
}
?>
var superslider_play = <?php echo json_encode(get_option_tree( 'superslider_play', '', 'false' )); ?> ;
var superslider_pagination = <?php echo json_encode(get_option_tree( 'superslider_pagination', '','false' )); ?> ;

$('#superslider_home').superslides({
play: superslider_play, // Milliseconds for delay
pagination: superslider_pagination

});

这输出:

var superslider_play = true ;
var superslider_pagination = true ;

$('#superslider_home').superslides({
play: superslider_play, // Milliseconds for delay
pagination: superslider_pagination

});
于 2013-06-22T04:39:15.880 回答