Php 如何在foreach循环中的一个特定选项上放置选定项
我试图在foreach中的数组中的值上回显“selected”。如果表单为false,并且我的客户已经在我的选择中输入了特定值,请将其返回,这样他就不会再次填写!这就是我想做的Php 如何在foreach循环中的一个特定选项上放置选定项,php,html,forms,select,Php,Html,Forms,Select,我试图在foreach中的数组中的值上回显“selected”。如果表单为false,并且我的客户已经在我的选择中输入了特定值,请将其返回,这样他就不会再次填写!这就是我想做的 <?php $marques = array('Word','Word1','Word20','Word46','Word9797'); foreach ($marques as $marque => $value) { if (isset($_POST['
<?php
$marques = array('Word','Word1','Word20','Word46','Word9797');
foreach ($marques as $marque => $value)
{
if (isset($_POST['marque']) && $_POST['marque'] == $value[$_POST['marque']]) {
echo '<option value="'.$_POST["marque"].'">'.$value[$_POST["marque"]].'</option>';
}
echo '<option value="'.$marque.'">'.$value.'</option>';
}
?>
更改value属性中的内容不会使项目或多或少处于选中状态。您需要添加所选属性,请参见 输出:ed html应该如下所示:
<option value="id" selected>some text</option>
一些文本
你是说这个
<?php
$marques = array('Word','Word1','Word20','Word46','Word9797');
foreach ($marques as $marque => $value) {
$setItSelected = '';
if (isset($_POST['marque']) && $_POST['marque'] == $marque) {
$setItSelected = 'selected';
}
echo '<option value="'.$marque.'" '.$setItSelected.'>'.$value.'</option>';
}
?>
与“”之间存在一些错误,但谢谢!这很好:)干得好!这正是我想要的。很简单,干净,干净。谢谢实际上,有一个错误。如果在该选项为空时按“提交”按钮,它将放置第一个选项,而不是空选项。这不是错误。我刚刚更改了您的代码,以便在ReceiveBy POST参数位于数组中时,能够将选择选项更改为选定状态。
<?php
$marques = array('Word', 'Word1', 'Word20', 'Word46', 'Word9797');
foreach ($marques as $marque)
echo '<option value="'.$marque.'" '.(($marque == $_POST['marque']) ? 'selected' : '').'>'.$marque.'</option>';
?>
<?php
$marques = array('Word','Word1','Word20','Word46','Word9797');
foreach ($marques as $marque => $value) {
$setItSelected = '';
if (isset($_POST['marque']) && $_POST['marque'] == $marque) {
$setItSelected = 'selected';
}
echo '<option value="'.$marque.'" '.$setItSelected.'>'.$value.'</option>';
}
?>