我遇到了一个奇怪的问题。我正在使用php if,依赖于结果,向js函数发送1。如果发送1,它应该阻止html的一部分,以便可以看到它。 1正在正确发送,因为它显示在警报中,但是当它到达命令时
document.getElementById("countdown").style.display="block";
我使用的代码是:
PHP:
if ($Grade == "Kindergarten")
{
echo "<script language=javascript>showCountDown(1)</script>";
}
我的js文件中的代码是:
function showCountDown(index)
{
alert("Checking for Kindergarten");
if (!index)
var n = document.getElementById("Grade").selectedIndex;
else
var n = index;
alert("Showing Index Selected: " + n);
if (n == 1)
{
alert("about to show Countdown to Kindergarten");
document.getElementById("countdown").style.display="block";
alert("Showing Countdown to Kindergarten");
}
else
{
alert("About to remove Countdown to Kindergarten");
document.getElementById("countdown").style.display="none";
alert("Removing Countdown to Kindergarten");
}
}
这是一个奇怪的部分,至少在我看来,当从html调用时,相同的代码可以工作:
<select size="1" name="Grade" id="Grade" onChange="showCountDown();">
我想,如果可能的话,等级是“幼儿园”,显示div倒计时。但是,我不明白为什么在发送正确的变量时代码无法正常工作。
有人可以帮忙吗?
答案 0 :(得分:0)
您是否尝试查看浏览器控制台上是否存在任何javascript错误? 它应该给你一些关于错误的线索..
如果您对showCountDown
有任何引用错误,可能是因为:
1 - 您忘记包含您的javascript文件。你可以在php上这样做:
echo "<script src='your-file.js'></script>";
2 - 您在声明函数之前调用该函数
3 - 您在javascript文件上有其他错误
正如你所说,你在HTMl上调用函数没有麻烦,我怀疑这是第二种选择。