编程语言
首页 > 编程语言> > 将PHP变量传递给JS函数

将PHP变量传递给JS函数

作者:互联网

参见英文答案 > How to pass variables and data from PHP to JavaScript?                                    18个

Possible Duplicate:
07001

我试图将PHP变量传递给javascript函数.我知道有很多关于这个问题的文章/问题,但它们似乎都不适合我.我的问题有点奇怪.让我从代码开始.

这是我的PHP代码:

<?php 
    session_start();

    $type = 'Dance';
    $environment = 'Outside';
?>

这是HTML代码:

<form onsubmit="showEvents(<?=$type ?>, <?=$environment ?>)">
        <select class="drop_down_menus" name="type">
            <option>All</option>
            <option>Dance</option>
            <option>Festival</option>
            <option>Music</option>
            <option>Stand-Up</option>
            <option>Theather</option>                               
        </select>
        <select class="drop_down_menus" name="environment">
            <option>All</option>
            <option>Indoor</option>
            <option>Outdoor</option>
        </select>
        <input type="submit" id="submit_button" value="Event Me Out!">
</form>
<div id="test_div">test1</div>

这是JS代码:

function showEvents(type, environment) {
    document.getElementById('test_div').innerHTML = "test2";
}

当我单击提交按钮时,“test_div”的文本必须从“test1”更改为“test2”,但在提交表单时没有任何更改.

奇怪的事情从这里开始:

当我使用以下PHP变量并将两个变量更改为“$current_year”时,它可以工作!

<?php
    $today = getdate();
    $current_year = $today['year'];
?>

<form onsubmit="showEvents(<?=$current_year ?>, <?=$current_year ?>)">
...rest of the HTML code...

我首先认为这是一个范围问题,但显然不是因为一个变量有效,而有些变量不是因为范围相同.

也许有一些非常简单的事我不知道.如果你能帮助我(或指导我另一个问题),我将不胜感激.迄今为止,这些解决方案都没有帮助我.

先感谢您.

注1:我试图回显$type和$environment变量,但没有帮助.

注意2:看起来我没有使用下拉菜单中的选项,但我没有在这里写完整的代码.

解决方法:

你应该使用:

<form onsubmit="showEvents('<?=$type ?>', '<?=$environment ?>')">

你试图这样做:showEvents(Dance,Outside)而不是:showEvents(‘Dance’,’Outside’)但你可能会有更多的错误.例如,<?= $type?>不推荐.你应该使用<?php echo $type?>.

标签:php,javascript,forms,html,onsubmit
来源: https://codeday.me/bug/20190716/1480355.html