2012-05-05 64 views
0

我有一个问题,在显示JS代码在PHP 我的代码是显示JavaScript代码PHP

<?php 
    if($result) 
    { 
     echo '<script language="javascript">'; 
     echo "$('#Err').hide()</script>"; 
    } 
    else 
    { 
     echo '<script language="javascript">'; 
     echo "$('#Err').show()</script>"; 
    } 
?> 

我使用的XAMPP对于运行代码当我运行此代码它不会显示 我不知道有什么问题 PLZ告诉我 谢谢!

+0

你写你的代码的方式告诉我你不知道字符串中的转义引号。如果你不知道这样一个基本的东西,我不希望你尝试*查看源代码*来查看PHP输出的内容。 –

+0

当您在浏览器中查看结果页面的源代码时,那里是

0

使用单引号,你的双引号作为一个PHP变量渲染$( '#ERR')

<?php 
    if($result) 
    { 
     echo '<script language="javascript">'; 
     echo '$(\'#Err\').hide()</script>'; 
    } 
    else 
    { 
     echo '<script language="javascript">'; 
     echo '$(\'#Err\').show()</script>'; 
    } 
?> 
0
<?php 
    if($result) 
    { 
     echo '<script type="text/javascript" language="javascript"> 
      $("#Err").hide()</script>'; 
    } 
    else 
    { 
     echo '<script type="text/javascript" language="javascript"> 
       $("#Err").show()</script>'; 
    } 
?> 
0

这种方式更容易理解并且使用较少的处理:

<!-- this is your php script with your html layout --> 

<script type="text/javascript"> 
    <?php if($result === true): ?> 
     $("#Err").hide(); 
    <?php else: ?> 
     $("#Err").show(); 
    <?php endif; ?> 
</script> 

尽量不要使用回声。这是PHP的一个好习惯。如果你真的想提高你的php生产力,我强烈推荐the Codeigniter framework。试一试=)。

0

你需要做一些调试,看看是那些获得系统产生的HTML网页的源:

<?php 
    // debug code: 
    var_dump($result); die('This place has been reached'); 

    // normal code: 
    printf("<script language=\"javascript\">\n\$('#Err').%s()\n</script>" 
      , $result ? 'hide' : 'show'); 
?> 

当您执行这一点,事情会出问题,但你可以看到什么$result包含这么调试脚本。如果它不在HTML源代码中显示,那意味着你的代码根本不会被执行,而你的问题在别的地方。