链接HTML中不同页面上的2个选择列表

时间:2014-05-29 08:38:43

标签: javascript php html

我有2个php html表单,都包含1个选择列表。在第一种形式中,我有一个选择列表,要求用户选择他们的状态。根据第一页上的状态选择,当用户单击提交时,第二个选择列表应显示该状态的邮政编码。

我在执行此任务时遇到困难,因为他们2个选择列表在2个不同的页面上,我知道如果使用javascript如果他们在同一个但我有点难过,因为他们在不同的页面上。我不知道如何将它们联系在一起。

State* <select id="state" name="state"">
                         <option value="">Select</option>
                         <option value="OKC">OKC</option>
                         <option value="NYC">NYC</option>
                         <option value="CAL">CAL</option>

     </select><br />

因此,如果用户从第一页上的第一个列表中选择OKC,则第二页上的第二个列表应仅显示OKC的邮政编码

1 个答案:

答案 0 :(得分:0)

如果您的select元素绝对需要2个不同的PHP页面,则可以使用HTTP参数。例如,你可以让第一个表单有一个提交按钮,它可以带你到第二个PHP页面:

firstpage.php:

<form action="secondpage.php" method="get">
    <select id="state" name="state">
         <option value="">Select</option>
         <option value="OKC">OKC</option>
         <option value="NYC">NYC</option>
         <option value="CAL">CAL</option>

    </select>

    <input type="submit" value="Next page" />

</form> 

提交按钮会将您的浏览器转到secondpage.php,但根据您的状态选择,它会附加一个参数,例如secondpage.php?state=OKC

secondpage.php上你可以使用这个参数:

$state = $_GET['state'];

使用PHP语句动态生成<select>元素:

 <?php

$state = $_GET['state'];

$postcodes = null;

if($state == "NYC")
{
    $postcodes = array("postcode1", "postcode2");
}

if($state == "OKC")
{
    $postcodes = array("postcode3", "postcode4");
}

?>


<form action="anotherpage.php" method="get">
    <select id="postcode" name="postcode">

        <?php

        foreach ($postcodes as $p) 
        {
            echo '<option value="'.$p.'">'.$p.'</option>';
        }

        ?>


    </select>

    <input type="submit" value="Next page" />

</form> 

当然有更有效的方法可以解决这个问题,但这应该会给你一个想法。