当echo $ _GET [“jsoncallback”]在下面添加代码javascript时出错

时间:2011-11-16 04:15:48

标签: php javascript json

我正在使用代码index.php

<?php
$str = "<div><ul><li><a href="#">click here</a><ul><li></li></ul></li></ul></div>";
echo $_GET["jsoncallback"] . '(' . json_encode($str) . ');';
?>
<script type="text/javascript">
$(document).ready(function(){
    $('#nav > li > a').click(function() {
        if($(this).attr('class') != 'active') {
            $('#nav li ul').slideUp();
            $(this).next().slideToggle();
            $('#nav li a').removeClass('active');
            $(this).addClass('active');
        }
    });
});
</script>

如果我使用代码

<?php
    $str = "<div><ul><li><a href="#">click here</a><ul><li></li></ul></li></ul></div>";
    echo $_GET["jsoncallback"] . '(' . json_encode($str) . ');';
    ?>

当运行index.php没问题时, 但是当在echo线下面添加一个javascript时出错: XML表达式中缺少} [打破此错误]});

1 个答案:

答案 0 :(得分:1)

这一行:

$$str = "<div><ul><li><a href="#">click here</a><ul><li></li></ul></li></ul></div>";

应该是这样的:

$str = "<div><ul><li><a href='#'>click here</a><ul><li></li></ul></li></ul></div>";