如何在php中回显javascript代码

时间:2013-04-16 08:02:05

标签: php javascript echo

我遇到了如何在php中回显javascript的问题。我有一个表单,在提交时将执行自己并回显一些文本,并将重定向到5secs页面。我现在正在回应这个:

header("Refresh: 5;url=index2.php?ID=".$objResult["ID"]."");

echo '<html>';
echo '<head>';
echo '<title>Klant toevoegen</title>';
echo '<link rel="stylesheet" href="style.css" type="text/css" media="screen" />';
echo '</head>';
echo '<body>';
echo '<fieldset>';
echo ''.$Naam.' is added to the database, u will be redirected in a couple of seconds.<br><br>';
echo '</fieldset>';
echo '</body>';
echo '</html>';

我的javascript是倒计时,从5倒数到1。代码是这样的:

<script>

var countdownFrom = 5;  // number of seconds
var countdownwin;

var stp;
function CountDownStart() {
 stp = setInterval("CountDownTimer('CountDownTime')",1000)
}

function CountDownTimer(id)
{
if (countdownFrom==0) {clearInterval(stp); window.close(); }
else     {
            var x
            var cntText = "Closing in "+countdownFrom+" seconds";

        if (document.getElementById)
    {
        x = document.getElementById(id);
        x.innerHTML = cntText;        }
    else if (document.all)
    {
        x = document.all[id];
        x.innerHTML = cntText;        }
    }
countdownFrom--
}

</script>
   <title>Untitled</title>
</head>

<body onload="CountDownStart()">

<Div id="CountDownTime"></div>

</body>

现在我想回应这个倒计时脚本来替换html中的<fieldset>。我尝试过几个例子,只需在1 echo '';中添加整个代码,我试图单独回显所有行,但两者都会崩溃我的整个脚本。如果有人知道怎么做,那就太好了!

3 个答案:

答案 0 :(得分:3)

我不会写所有那些echo,而是将所有HTML和JS留在PHP块之外

<?php
some php code
?>

HTML AND JS

<?php
More php if required
?>

并使用

<?=$Naam?>

在必要时注入您的值

或者你应该看一下模板引擎

答案 1 :(得分:2)

尝试使用

echo <<<EOT
   /*  some text here */
EOT;

答案 2 :(得分:0)

您可以将脚本放在单独的.js文件中,并将echo脚本标记:

<? echo "<script type='text/javascript' src='path/to/script.js' ></script> ?>

不要忘记从JS文件中删除任何HTML标记,例如<body><head>等。