点击编辑后,未显示所选值。
任何人都可以告诉我哪里出错!!。
<select id="country" name="country" class="code" >;
<option value="">select country</option>
<?php
global $wpdb;
$coun_name = $wpdb->get_col("select country_name FROM countries ") ;
foreach($coun_name as $a)
{
<option value="<?php echo strtolower($a); ?>" <?php echo ($item["country"] == $a) ? 'selected="selected"' : '';?>><?php echo $a;?></option>
}
?>
</select>
答案 0 :(得分:2)
你错了。 <?php
部分未执行,但会被评估为字符串。您有两种可能的方法来实现它:
在第一个echo中使用字符串连接:
echo '<option value="'. strtolower($a) .'"' . ($item["country"] == $a ? ' selected="selected"' : "") . '>' . $a .'</option>';
将其拆分为多个回声:
echo '<option value="'. strtolower($a) .'" ';
echo $item["country"] == $a ? 'selected="selected"' : "";
echo '>' . $a .'</option>';
答案 1 :(得分:0)
在回声内部,您无法再次使用
<?php ?>
。你的选项标签有些问题。您错过了关闭第一个开始标记的选项标记。
使用单独的HTML和PHP来实现此目的。
<option value="<?php echo strtolower($a); ?>" <?php echo ($item["country"] == $a) ? 'selected="selected"' : '';?>><?php echo $a;?></option>
<强>更新强>
foreach($coun_name as $a)
{?>
<option value="<?php echo strtolower($a); ?>" <?php echo ($item["country"] == $a) ? 'selected="selected"' : '';?>><?php echo $a;?></option>
<?php
}