我用过
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
当用户选择通过表单中的选项(在本例中为“ Material ”)设置限制时,自动重新加载页面。 这非常适合硬编码选项,但不适用于通过 PHP 从 mySQL 数据库中提取的选项。所以:
<form id="material" class="floatleft" method="POST" action="detail.php?material=">
<select name="material" id="material" onchange="this.form.submit()">
适用于硬编码的“亚麻布”
echo '<option value="linen" ';
if ($material == "linen")
echo 'selected="selected"';
echo '>Linen</option>';
但从 PHP 查询检索时不包含“linen”
$i = 0;
while ($row_material = mysqli_fetch_array($result_material))
{
echo '<option value="'.$material.'" ';
if ($material == $row_material['material'])
echo 'selected="selected"';
echo '>'.$row_material['material'].'</option>';
$i++;
}
感谢您的帮助
最佳答案
将其更改为您的代码。我用过ternary运算符将使代码更具可读性
$array = array(
array('material' => 'linen'),
array('material' => 'test'),
array('material' => 'test2'),
array('material' => 'test3'),
);
echo '<select>';
$material = 'test2';
foreach($array as $row_material)
{
$selected = ($material == $row_material['material']) ? 'selected=true' : '';
echo '<option value="'. $row_material['material'] .'" ' .$selected .' >' . $row_material['material'].'</option>';
$i++;
}
echo '</select>';
关于php - 自动 jquery 重新提交适用于表单中的硬编码值,但不适用于 PHP 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43801038/