我正在尝试从PHP启动Javascript函数来初始化模块。这是我的代码:
<?php
defined('_JEXEC') or die('Direct Access to this location is not allowed.');
$ParamArray[]='AdVisualV2jMODPHP_ver'; $ParamArray[]='0.3.0070'; // 000
$ParamArray[]='Station_ID'; $ParamArray[]=$params->get('Station_ID'); // 001
$ParamArray[]='Verbose'; $ParamArray[]=$params->get('Verbose'); // 002
$ParamArray[]='Bk_ColorODD'; $ParamArray[]=$params->get('Bk_ColorODD'); // 003
$ParamArray[]='Bk_ColorEVEN'; $ParamArray[]=$params->get('Bk_ColorEVEN'); // 004
$ParamArray[]='Ink_ColorODD'; $ParamArray[]=$params->get('Ink_ColorODD'); // 005
echo 'AVVIAMO LA PROCEDURA 0.0.095 - '.$Station_ID.'<br><br>';
echo '<div id="TabellaEventi"></div>';
$ParamArray = json_encode($ParamArray);
$ParamArray = htmlentities($ParamArray);
echo "<script language='javascript'>DisplayTable(0,15)</script>";
echo '<INPUT Type="BUTTON" VALUE="Avanti" ONCLICK="avanti('.$ParamArray.')"> ';
echo '<INPUT Type="BUTTON" VALUE="Indietro" ONCLICK="indietro('.$ParamArray.')"> ';
echo '<br>';
?>
<script>
Start = 0
Page = 15
// DisplayTable(Start,Page)
function avanti(Listaparametri) {
Start=Start+Page+1
DisplayTable(Start,Page)
}
function indietro(Listaparametri) {
Start=Start-Page-1
if (Start<0) {
Start = 0
}
DisplayTable(Start,Page)
}
function DisplayTable(Inizio,Incremento) {
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
Esito=xmlhttp.responseText;
}
}
xmlhttp.open('GET','xxxxxxxxxxxxxxxx/name.php?Start='+Inizio+'&Page='+Incremento,false);
xmlhttp.send();
Esito='VISUALIZZAZIONE TABELLA<br>'+Esito+'<br><br>'
document.getElementById('TabellaEventi').innerHTML=Esito;
}
</script>
我在页面加载时继续收到未捕获的参考错误DISPLAYTABLE在控制台中没有定义,并且必须调用DisplayTable javascript函数,如果我在脚本Javascript部分删除了//它可以正常工作。当然我错过了什么,我无法理解什么,谢谢你的帮助(我是PHP / Javascript初学者,我道歉)
答案 0 :(得分:2)
正如它所说,当你调用它时,没有定义DisplayTable。在调用它之前声明函数。通常你可以在声明函数之前调用它,但在你的情况下,你是从一个不同的脚本标记(在你的PHP中加入)调用它。
无效:
<script type="text/javascript">
test();
</script>
<script type="text/javascript">
function test() { }
</script>
会工作:
<script type="text/javascript">
test();
function test() { }
</script>
还有:
<script type="text/javascript"></script>
您是否正确编写脚本标记。
编写代码时必须保持一致,它会帮助你找到错误,而且你也会减少错误。
如果您使用:
bla bla {
}
不要使用
bla bla
{
}
其他地方。
不要忘记分号;经过指示。保持清晰的认同等。