我的代码就像
echo("<td>$row[Status]</td>");
echo("<td>
<select name=\"choose\" id=\"Choose\" onChange=\"\">
<option value=\"Unverified\">Unverified</option>
<option value=\"Approved\">Approve</option>
<option value=\"Decline\">Decline</option>
<option value=\"Pending\">Pending</option>
</select>
</td>");
这是我想要做的 如果($ row [Status] == Approved)那么代码应该像这样改变
.
.
<option value=\"Approved\" Selected>Approve</option>
.
.
最简单的方法是为所有人创建一个简单的if条件,但必须有更聪明的方法来做到这一点。有任何想法吗?
我宁愿把它保存在php本身。如果你要使用一些更复杂的符号,比如a =&gt; b请解释为何使用它及其作用。
答案 0 :(得分:1)
创建可能值的数组,然后在循环中创建选项。这样,你只需要编写一个条件,使当前条件符合所需(此处,已批准)的值
答案 1 :(得分:0)
试试这个!它将遍历整个数组,并在到达时选择所选的选项。这是你在找什么?
(尚未经过测试)
echo ("<select name=\"choose\" id=\"Choose\" onChange=\"\">");
$sel["Unverified"] = "Unverified";
$sel["Approved"] = "Approve";
$sel["Decline"] = "Decline";
$sel["Pending"] = "Pending";
$selected = "Approved";
foreach($sel as $key => $value) {
if ($selected == $key) {
echo ("<option value=\"$key\">$value</option>");
}
else {
echo ("<option value=\"$key\" selected>$value</option>");
}
}
echo ("</select>");
?>
答案 2 :(得分:0)
echo("<td>$row[Status]</td>");
$search= "$row[Status]\"";
$replace= "$row[status]\" Selected";
$subject="<td>
<select name=\"choose\" id=\"Reason\" onChange=\"\">
<option value=\"Unverified\">Unverified</option>
<option value=\"Approved\">Approve</option>
<option value=\"Decline\">Decline</option>
<option value=\"Pending\">Pending</option>
</select>
</td>";
$subject=str_replace($search, $replace, $subject);
echo $subject;
我使用了上面的内容并获得了我想要的结果...浪费了一个小时,不知道str_replace会返回编辑后的值而不是替换$ subject。谢谢大家。