【问题标题】:Run a JavaScript function from a php if [closed]如果 [关闭] 从 php 运行 JavaScript 函数
【发布时间】:2014-04-20 00:51:50
【问题描述】:

我必须使用 PHP 变量运行 JavaScript,代码具有 PHP if 语句,如果为 true,则将执行 JavaScript,但脚本使用第二个 PHP 变量。

<?php
   if ($time_close_option == 1){
      echo '<script type="text/javascript">';
      // close the div in $timeoutdiv secs
      echo 'window.setTimeout("closePromoSpace();",' <?php echo $timeoutdiv;?>);';
      echo 'function closePromoSpace()
      {
          document.getElementById("promospace").style.display=" none";
      };';
      echo'</script>';
   }
?>  

【问题讨论】:

    标签: javascript php html


    【解决方案1】:

    您似乎使用$timeoutdiv 作为字符串,而不是数字。试试

    <?php if ($time_close_option == 1) { ?>
    <script type="text/javascript">
        // close the div in $timeoutdiv secs
        window.setTimeout(closePromoSpace(), <?php echo $timeoutdiv;?>);
        function closePromoSpace()
        {
            document.getElementById("promospace").style.display=" none";
        };
    </script>
    <?php  } ?>  
    

    请注意,我们可以通过不使用 echo 语句,而是通过在 php 和 html 上下文之间切换来大量清理代码。

    【讨论】:

    • 它在 FF 和 Chrome 中完美运行,但在 IE 中却不是,问题出在哪里
    【解决方案2】:
    <?php if ($time_close_option == 1)
    {
        echo '<script type="text/javascript">';
        echo 'function closePromoSpace()
        {
            document.getElementById("promospace").style.display="none";
        }';
        echo "window.setTimeout(closePromoSpace, $timeoutdiv);";
        echo '</script>';
    }
    ?>
    

    【讨论】:

    • 请解释一下代码是什么以及它是如何做到这一点的?
    【解决方案3】:
    <script type="text/javascript">
        <?php
        if ($time_close_option == 1)
         {?>
           window.setTimeout(closePromoSpace, '<?php echo $timeoutdiv; ?>');
           function closePromoSpace()
           {
             document.getElementById("promospace").style.display = "none";
           }
        <?php
         } ?> 
    </script>
    

    试试这个

    【讨论】:

      猜你喜欢
      • 2015-12-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-18
      相关资源
      最近更新 更多