将“ selected”属性添加到PHP中的selected选项 - php

我正在创建页面构建器,但是选择框没有什么问题。

这就是我通过jQuery创建选择框的方式

    var item_opts = '<select>'
        + '<option value="red">Red</option>'
        + '<option value="green">Green</option>'
        + '<option value="blue">Blue</option>'
        + '<option value="yellow">Yellow</option>'
    + '</select>'

$('.items_options').append(item_opts);

这就是我在PHP中的称呼方式

<select>
  <?php if ( $pb_item['message_color'] == "red" ) { ?>
    <option selected="selected" value="red">Red</option>
    <option value="green">Green</option>
    <option value="blue">Blue</option>
    <option value="yellow">Yellow</option>
  <?php } elseif ( $pb_item['message_color'] == "green" ) { ?>
    <option value="red">Red</option>
    <option selected="selected" value="green">Green</option>
    <option value="blue">Blue</option>
    <option value="yellow">Yellow</option>
  <?php } elseif ( $pb_item['message_color'] == "blue" ) { ?>
    <option value="red">Red</option>
    <option value="green">Green</option>
    <option selected="selected" value="blue">Blue</option>
    <option value="yellow">Yellow</option>
  <?php } else { ?>
    <option value="red">Red</option>
    <option value="green">Green</option>
    <option value="blue">Blue</option>
    <option selected="selected" value="yellow">Yellow</option>
  <?php } ?>                      
</select> 

是否有一些比我更好的解决方案,如何将“选择的”参数添加到选择的选项?

谢谢您的时间和您的建议:)

参考方案

是的,有更好的解决方案

<select>
    <option <? ($pb_item['message_color'] == 'red'?'selected="selected"') ?> value="red">Red</option>
    <option <? ($pb_item['message_color'] == 'green'?'selected="selected"') ?> value="green">Green</option>
    <option <? ($pb_item['message_color'] == 'blue'?'selected="selected"') ?> value="blue">Blue</option>
    <option <? ($pb_item['message_color'] == 'yellow'?'selected="selected"') ?> value="yellow">Yellow</option>                   
</select>

即使您可以通过for循环列出选项,例如:

$colors = array('blue', 'red', ..);
foreach($colors as $color) {
    echo "<option ".($pb_item['message_color'] == $color?'selected="selected"')."value='$color'>" . ucwords($color) . "</option>";
}

Div单击与单选按钮相同吗? - php

有没有一种方法可以使div上的click事件与表单环境中的单选按钮相同?我只希望下面的div提交值,单选按钮很丑代码输出如下:<input id="radio-2011-06-08" value="2011-06-08" type="radio" name="radio_date&#…

PHP-复选框组 - php

我有一个需要发布的表单复选框组。<input type="checkbox" value="true" checked name="chk0[]"> <input type="checkbox" value="false" name=…

故障排除“警告:session_start():无法发送会话高速缓存限制器-标头已发送” - php

我收到警告:session_start()[function.session-start]:无法发送会话缓存限制器-标头已发送(错误输出开始如果我将表单数据提交到其他文件进行处理,则可以正常工作。但是,如果我将表单数据提交到同一页面,则会出现此错误。请建议<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0…

CodeIgniter更新查询被执行两次 - php

我正在使用CodeIgniter 2.2。每次访问页面时,我都必须用+1更新数据库。代码可以工作,但是每次都会增加+2。示例:如果是total views=2,则在单击页面后total views应该是3,但是数据库中的值是4。我确定我在控制器中仅调用一次模型add_one_to_view_image。控制者 function view(){ $view_i…

通过php表单修改我的xml文件 - php

这是我的xml文件和下面的php代码。我输入了一个输入类型,它将按名字搜索学生。然后将显示有关特定学生的信息,并且将显示另一个按钮更新。问题是我想在那之后修改信息。如何通过标签名称获取元素,以便可以修改有关特定学生的信息?<students> <student> <firstname>John</firstname&…