在PHP中调用JS函数

时间:2011-03-04 18:32:30

标签: php javascript

我知道可以在php中调用javascript函数并且它已经工作但是当我尝试调用checkSecondValue时,没有任何反应。我已经在调用函数时包含了我的变体。

编辑:如果我尝试在底部调用它而不激活select中的onChange事件,它就不会工作。

<!--<html>
<head>
    <script type="text/javascript" src="validation.js"></script>
    </head>
</html>

<script src="validation.js" type="text/javascript"></script>
-->
<?php
    //retrieve all the bris for the drop down
include '../../inc/database.php';
$res = BbqcDatabase::getInstance()->doQuery('SELECT * FROM T_TOURNOI_BRIS');
$str = "<select name='ddlBrisSelected' id='ddlBrisSelected' onChange='checkSecondValue()'>";

$bris = ($_GET['bris']);

if($bris == 4)
{
    $bris2 = "autre";
}

if($bris == null)
{
    $str .= "<option value='' selected></option>";
}
else
{
    $str .= "<option value=''></option>";
}

$i = 0;
while($data = mysql_fetch_assoc($res))
{
    if($data['F_BRISID'] == $bris)
    {
        $str .= "<option value='" . $data['F_BRISID'] . "' selected '>" . $data['F_BRISTITLE'] . "</option>";
    }
    else 
    {
        $str .= "<option value='" . $data['F_BRISID'] . "'>" . $data['F_BRISTITLE'] . "</option>";
    }
}

if($bris2 == "autre")
{
    $str .= "<option value='autre' selected>Autre</option>";
}
else
{
    $str .= "<option value='autre'>Autre</option>";
}
$str .= "</select>";

echo $str;

if(is_numeric($bris))
{
    /* echo "<SCRIPT language=\"JavaScript\" SRC=\"validation.js\">checkSecondValue();</SCRIPT>"; */
    /* echo "<script> checkSecondValue();</script>"; */
    /* echo "<script type=\"text/javascript\">checkSecondValue();</script>"; */
    /* echo '<script type="text/javascript">', 'checkSecondValue();', '</script>'; */
    /* echo "<SCRIPT LANGUAGE='javascript'>checkSecondValue();</SCRIPT>"; */
}

?>

2 个答案:

答案 0 :(得分:3)

您无法从PHP调用客户端javascript函数,但您可以回显使客户端在特定(客户端)事件上调用函数的代码。

只需查看从PHP中获取的生成的HTML,然后从那里尝试查看为什么onSehange事件上没有执行checkSecondValue()。

答案 1 :(得分:0)

至少,您希望在加载页面后才能进行函数调用。这可以通过在onload

期间将函数嵌入body标签来完成
<body onload="checkSecondValue();">

在整个页面由PHP处理之后,函数调用将在客户端执行。在页面处理过程中,您无法在JavaScript和PHP之间来回沟通。

相关问题