我正在尝试将输入值发送到带有选择列表的另一页。无论如何,是否可以根据上一页输入的值在选择下拉列表中选择一个选项?这可能吗?我试图思考,如果没有JavaScript,这似乎是不可能的。谢谢你的帮助。我在下面添加了一些代码可能会有所帮助。
<form action="shoppingcart.php">
<input name="bed_range" type="range" min="1" max="6" value="1" class="slider" id="bed_service" oninput="sliderChange(this.value);">
<input name="bath_range" type="range" min="1" max="6" value="1" class="slider" id="bath_service" oninput="sliderChange2(this.value);">
</form>
// then on following page
<select name="bdrms" class="calculate_bdrms" id="bdrms" onchange="">
<option>One Bedroom Home</option>
<option>Two Bedroom Home</option>
<option>Three Bedroom Home</option>
<option>Four Bedroom Home</option>
<option>Five Bedroom Home</option>
<option>Six Bedroom Home</option>
</select>
我希望能够根据发送的输入来操纵所选选项...这可能吗?任何帮助是极大的赞赏。谢谢。
答案 0 :(得分:1)
<form action="shoppingcart.php">
<input name="bed_range" type="range" min="1" max="6" value="1" class="slider" id="bed_service" oninput="sliderChange(this.value);">
<input name="bath_range" type="range" min="1" max="6" value="1" class="slider" id="bath_service" oninput="sliderChange2(this.value);">
<input type="submit">
</form>
对于下一页;如果您使用的格式像这样,则值将出现在URL中,则可以使用$_GET['name_of_input']
来获取它。
<?php
EDIT: As stated by FunkFortyNiner you should also check if the data is present or not to prevent errors. like
if (isset($_GET['bed_range']) && !empty($_GET['bed_range'])) {
$select1 = $_GET['bed_range'];
}
if (isset($_GET['bath_range']) && !empty($_GET['bath_range'])) {
$select2 = $_GET['bath_range'];
}
//data is now $select1 and $select 2. Manipulate them however you like
?>
<select name="bdrms" class="calculate_bdrms" id="bdrms" onchange="">
<option <?php if ( isset($select1) && $select1 === 1) echo 'selected';?> >One Bedroom Home</option>
<option <?php if ( isset($select1) && $select1 === 2) echo 'selected';?>>Two Bedroom Home</option>
<option <?php if ( isset($select1) && $select1 === 3) echo 'selected';?>>Three Bedroom Home</option>
<option <?php if ( isset($select1) && $select1 === 4) echo 'selected';?>>Four Bedroom Home</option>
<option <?php if ( isset($select1) && $select1 === 5) echo 'selected';?>>Five Bedroom Home</option>
<option <?php if ( isset($select1) && $select1 === 6) echo 'selected';?>>Six Bedroom Home</option>
</select>