在php foreach中选择下拉值
我用php生成了一个下拉列表在php foreach中选择下拉值,php,html,Php,Html,我用php生成了一个下拉列表 <select name="diploma" id="diploma-<? echo $edu['id']; ?>"> <? foreach($diplomas->result_array() as $diploma) { echo "<option value=".$diploma['id'].">".$diploma['name']."</op
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<? foreach($diplomas->result_array() as $diploma) {
echo "<option value=".$diploma['id'].">".$diploma['name']."</option>";
} ?>
</select>
我还有
,它是数据库中的一个值。我想将selected=“selected”
添加到下拉列表中与此值匹配的选项中。我应该只使用jquery吗?执行此操作的最佳方法是什么?您可以这样检查循环内部:
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<?
foreach($diplomas->result_array() as $diploma)
{
if($edu['diploma']==$diploma['name'])
{
echo "<option selected ='selected' value=".$diploma['id'].">".$diploma['name']."</option>";
}
else
{
echo "<option value=".$diploma['id'].">".$diploma['name']."</option>";
}
}
?>
</select>
您可以像这样检查循环内部:
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<?
foreach($diplomas->result_array() as $diploma)
{
if($edu['diploma']==$diploma['name'])
{
echo "<option selected ='selected' value=".$diploma['id'].">".$diploma['name']."</option>";
}
else
{
echo "<option value=".$diploma['id'].">".$diploma['name']."</option>";
}
}
?>
</select>
使用相同的PHP代码:
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<? foreach($diplomas->result_array() as $diploma) {
echo "<option value=".$diploma['id'];
if ($edu['diploma'] == $diploma['name']) {
echo 'selected="selected"';
}
echo ">".$diploma['name']."</option>";
} ?>
</select>
代码将每个选项的$diplicial['name']
与您的$edu['diplicial']
变量进行比较,如果它们相同,则输出selected=“selected”
根据$edu['diplificate']
的内容,您需要将其与一件事或另一件事进行比较。如果$edu['diplificate']
包含id
则将$diplificate['name']
更改为$diplificate['id']
如果$edu['diplificate']
包含diplificate对象本身,则需要通过以下方式进行比较:$edu['diplificate']['id']==$diplificate['id']
使用相同的PHP代码:
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<? foreach($diplomas->result_array() as $diploma) {
echo "<option value=".$diploma['id'];
if ($edu['diploma'] == $diploma['name']) {
echo 'selected="selected"';
}
echo ">".$diploma['name']."</option>";
} ?>
</select>
代码将每个选项的$diplicial['name']
与您的$edu['diplicial']
变量进行比较,如果它们相同,则输出selected=“selected”
根据$edu['diplificate']
的内容,您需要将其与一件事或另一件事进行比较。如果$edu['diplificate']
包含id
则将$diplificate['name']
更改为$diplificate['id']
如果$edu['diplificate']
包含diplificate对象本身,您需要这样比较:$edu['diplificate']['id']==$diplificate['id']
这就是我想到的:
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<?php foreach ($diplomas->result_array() as $diploma) {
//echo "<option value='{$diploma['id']}'>{$diploma['name']}</option>";
echo "<option value='{$diploma['id']}";
if ($edu['diploma'] === $diploma['name']) {
echo " selected";
}
echo ">{$diploma['name']}</option>\n";
} ?>
</select>
这就是我想到的:
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<?php foreach ($diplomas->result_array() as $diploma) {
//echo "<option value='{$diploma['id']}'>{$diploma['name']}</option>";
echo "<option value='{$diploma['id']}";
if ($edu['diploma'] === $diploma['name']) {
echo " selected";
}
echo ">{$diploma['name']}</option>\n";
} ?>
</select>
在循环内执行检查,如果值匹配,则回显选定的属性。注意,我在测试中使用了a。
在循环内执行检查,如果值匹配,则回显选定的属性。注意,我在测试中使用了a。如果我没弄错,试试这个
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<?
$selected = $edu['diploma'];
foreach($diplomas->result_array() as $diploma) {
if($diploma['name'] == $selected){
echo '<option selected="selected" value="'.$diploma['id'].'">'.$diploma['name']."</option>";
}else{
echo '<option value="'.$diploma['id'].'">'.$diploma['name']."</option>";
}
}
?>
</select>
如果我没弄错,试试这个
<select name="diploma" id="diploma-<? echo $edu['id']; ?>">
<?
$selected = $edu['diploma'];
foreach($diplomas->result_array() as $diploma) {
if($diploma['name'] == $selected){
echo '<option selected="selected" value="'.$diploma['id'].'">'.$diploma['name']."</option>";
}else{
echo '<option value="'.$diploma['id'].'">'.$diploma['name']."</option>";
}
}
?>
</select>