【问题标题】:php javascript select with default valuephp javascript选择默认值
【发布时间】:2016-12-09 06:05:44
【问题描述】:

我在 php 的关联数组中有一些城市列表。我使用javascript“on change”来获取每个项目的值。我想将一个项目设置为默认值(我想我正在考虑将来使用地理位置)。

这是我的数组:

// Array lists
$city_array = array(
    array('id' => '1', 'name' => 'Aaaa'),
    array('id' => '2', 'name' => 'Bbbb'),
    array('id' => '3', 'name' => 'Cccc'),
    array('id' => '4', 'name' => 'Dddd'),
    array('id' => '5', 'name' => 'Eeee'),
);
$json_city = json_encode($city_array);

还有我的php函数:

// Decode
$cities = json_decode($json_city);
function display_cities() {
    global $cities;
    $output = '<select id="citylists" onChange="onSelectCity()">';
    foreach( $cities as $city ) {
        $output .= '<option class="itemcity" value="'.$city->id.'">'.$city->name.'</option>';
    }
    $output .= '</select>';
    $output .= '<script type="text/javascript">
        function onSelectCity() {
            var cityLists = document.getElementById("citylists");
            console.log(cityLists.value);
        }
        window.onload = function() {
            onSelectCity();
        }
    </script>';
    echo $output;
}

我希望输出是这样的(用 HTML 打印):

<select id="citylists">
    <option class="itemcity" value="1">Aaaa</option>
    <option class="itemcity" value="2">Bbbb</option>
    <option class="itemcity" value="3" selected>Cccc</option>
    <option class="itemcity" value="4">Dddd</option>
    <option class="itemcity" value="5">Eeee</option>
</select>

如你所见,我设置的默认值为&lt;option class="itemcity" value="3" selected&gt;Cccc&lt;/option&gt;。

如何在动态 php 循环中做到这一点?

谢谢

【问题讨论】:

标签: javascript php arrays associative-array


【解决方案1】:

试试这个:

foreach( $cities as $city ) {
    $selected = ($city->id == 3)?' selected ':null;

    $output .= '<option class="itemcity" value="'.$city->id.'"'.$selected.'>'.$city->name.'</option>';
}

顺便说一句,对于有效的 HTML,您应该将其更改为 selected="selected"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-24
    • 1970-01-01
    • 2018-07-24
    • 2017-11-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-02
    相关资源
    最近更新 更多