通过JavaScript使用PHP操作自动提交表单

通过JavaScript使用PHP操作自动提交表单,javascript,php,html,forms,Javascript,Php,Html,Forms,如果这个问题很幼稚,请原谅我。我是JavaScript新手,正在学习如何使用一个用于显示数据的表单来克服一些挫折 icao代码通过脚本底部JavaScript代码中的$_GET['icao']传递到depicao菜单。页面加载时,菜单将填充$_GET['icao']值 填充depico菜单后,我希望表单自动提交其填充值。我的思路是如果我包括 document.getElementById("form").submit(); 作为脚本中的最后一行,我可以让脚本在加载$\u get['icao']

如果这个问题很幼稚,请原谅我。我是JavaScript新手,正在学习如何使用一个用于显示数据的表单来克服一些挫折

icao代码通过脚本底部JavaScript代码中的$_GET['icao']传递到depicao菜单。页面加载时,菜单将填充$_GET['icao']值

填充depico菜单后,我希望表单自动提交其填充值。我的思路是如果我包括

document.getElementById("form").submit();
作为脚本中的最后一行,我可以让脚本在加载$\u get['icao']值后提交自己。然而,不幸的是,这一直不起作用

注意:代码包含多个按钮。我相信这是罪魁祸首

请参阅下面的代码

<form id="form" action="<?php echo actionurl('/schedules/view');?>" method="post">
<div id="tabcontainer">
    <ul>
        <li><a href="#depapttab" onclick="formReset()"><span>Via departure airport</span></a></li>
        <li><a href="#arrapttab" onclick="formReset()"><span>Via arrival airport</span></a></li>
    </ul>
    <div id="depapttab">
        <select id="depicao" name="depicao">
        <option value="">Select All</option>
        <?php
        $exclude = array(13, 18, 19, 22); // Airport IDs found in phpVMS_airports not to be included in the dropdown menu
        if(!$depairports) $depairports = array();
            foreach($depairports as $airport) {
                if(!in_array($airport->id, $exclude)) { // Exclude values in the above array from the dropdown menu
                    echo '<option value="'.$airport->icao.'">'.$airport->icao.' - '.$airport->name.'</option>';
                }
            }
        ?>
        </select>
        <input type="submit" name="submit" value="Find Flights" />
    </div>
    <div id="arrapttab">
        <select id="arricao" name="arricao">
            <option value="">Select All</option>
        <?php
        $exclude = array(13, 18, 19, 22); // Airport IDs found in phpVMS_airports not to be included in the dropdown menu
        if(!$depairports) $depairports = array();
            foreach($depairports as $airport) {
                if(!in_array($airport->id, $exclude)) { // Exclude values in the above array from the dropdown menu
                    echo '<option value="'.$airport->icao.'">'.$airport->icao.' - '.$airport->name.'</option>';
                }
            }
        ?>
        </select>
        <input type="submit" name="submit" value="Find Flights" />
    </div>
</div>
<input type="hidden" name="action" value="findflight" />
</form>
<script type="text/javascript">
function formReset() {
    document.getElementById("form").reset();
}
function setSelectedIndex(s, valsearch) {
    // Loop through all the items in drop down list
    for (i = 0; i< s.options.length; i++) { 
        if (s.options[i].value == valsearch) {
            // Item is found. Set its property and exit
            s.options[i].selected = true;
            break;
        }
    }
    return;
}
setSelectedIndex(document.getElementById("depicao"),"<?php if(isset($_GET['icao'])) { echo $_GET['icao']; } else { echo 'Select All'; } ?>");
document.getElementById("form").submit();
</script>
表格自动提交混乱?:

填充depico菜单后,我希望表单自动提交其填充值


我是如何理解您的,您希望在填充选择菜单时自动提交表单的?我想你的意思是当用户选择一个选项时,它应该自动提交。如果这是你的意思。请在标记上添加一个onchange=//submitfunction

我正试图让表单在填充了从$\u GET['icao']onload传递的值后自动提交。@JoseManuelAbarcaRodríguez这是正确的。目前,用户必须单击“查找航班”按钮才能提交表单。我希望表单自动提交并加载通过$_GET['icao']@JoseManuelAbarcaRodríguez传入字段的数据。默认值设置为“全选”,显示所有数据。@JoseManuelAbarcaRodríguez有时是;用户可以选择该选项。在这个场景中,一个值通过$\u GET传递给表单,该值就是需要提交的值。我已经设置了表单,以便$\u GET值成功填充该字段,但在该情况发生后,我无法使表单自动提交。@lumnfreeseamonster是否检查了控制台中的错误?