Select 字段在页面重置时重置
Select field resets when the page resets
我写了一个代码,用户可以在 select 字段中 select 一个选项。它有 onchange="location = this.options[this.selectedIndex].value;"
在 select 标签上,每个选项标签都有自己的价值。
所以我的问题是:
当我 select 来自此 select 字段的选项时,它会将查询字符串发送到同一页面,我希望我的 selected 选项保持 selected但是 select 字段在页面重置时被重置。
事实并非如此,但确实有效,但我想我对我的代码做了一些更改(我找不到),这导致了问题。
这是我的代码:
<?php
parse_str($_SERVER['QUERY_STRING']);
require ('../config.php');
/* connect and select db codes*/
$dbresult=mysqli_query($connection, "SELECT * FROM services");
while($row = mysqli_fetch_array($dbresult)){
$order_name = $row['name'];
$order_id = $row['id'];
echo "<option value=\"NewOrder.php?service=$order_id&quantity=1th\">$order_name</option>";
}
?>
</select><br/>
/* ...continue of my codes...*/
您必须在属性中指定 select 选项。
所以对于你想要select的选项,你需要添加selected="selected"
属性
在 PHP 中,这可以在 echo 语句之前通过类似的方式完成,如果订单 ID 与查询字符串中指定的订单 ID 相同,它将 select 使用此选项
if($service == $order_id){
$selected = "selected";
}
else{
$selected = "";
}
并且在你的 echo 语句中
echo "<option value=\"NewOrder.php?service=$order_id&quantity=1th\" ".$selected.">$order_name</option>";
我写了一个代码,用户可以在 select 字段中 select 一个选项。它有 onchange="location = this.options[this.selectedIndex].value;"
在 select 标签上,每个选项标签都有自己的价值。
所以我的问题是:
当我 select 来自此 select 字段的选项时,它会将查询字符串发送到同一页面,我希望我的 selected 选项保持 selected但是 select 字段在页面重置时被重置。 事实并非如此,但确实有效,但我想我对我的代码做了一些更改(我找不到),这导致了问题。
这是我的代码:
<?php
parse_str($_SERVER['QUERY_STRING']);
require ('../config.php');
/* connect and select db codes*/
$dbresult=mysqli_query($connection, "SELECT * FROM services");
while($row = mysqli_fetch_array($dbresult)){
$order_name = $row['name'];
$order_id = $row['id'];
echo "<option value=\"NewOrder.php?service=$order_id&quantity=1th\">$order_name</option>";
}
?>
</select><br/>
/* ...continue of my codes...*/
您必须在属性中指定 select 选项。
所以对于你想要select的选项,你需要添加selected="selected"
属性
在 PHP 中,这可以在 echo 语句之前通过类似的方式完成,如果订单 ID 与查询字符串中指定的订单 ID 相同,它将 select 使用此选项
if($service == $order_id){
$selected = "selected";
}
else{
$selected = "";
}
并且在你的 echo 语句中
echo "<option value=\"NewOrder.php?service=$order_id&quantity=1th\" ".$selected.">$order_name</option>";