在<select multiple =“”>中有多个预选值吗?</select>

时间:2014-09-02 15:11:43

标签: php html wordpress

是否可以在一个盒子中有多个预先选择的选项?下面是我的PHP代码,它对我来说具有逻辑意义,并且似乎输出正确的HTML,所有内容都在正确的位置,但它实际上并不显示在页面上选择的任何选项。

<?php

$options = $wpdb->get_results( $query); 
$number = count($options);

$optionsChosen = explode(",", $userInfo->userOptions); 
// This is the list of options the user has chosen, separated by commas, i.e. "service1, service2,"

echo "<select name=\"option[]\" id=\"option\" size=\"$number\" multiple>\n";

foreach ( $options as $thisOption ) { 
    echo "<option value=\"$thisOption->optionName\" title=\"";
    echo stripslashes($thisOption->optionDescription)."\" ";

    for($i=0; $i<count($optionsChosen); $i++){
        if($optionsChosen[$i]==$thisOption->optionName){
            echo "selected=\"selected\" ";
        } // End if()
    } // end for()

    echo ">$thisOption->optionName</option>\n";
 } // end foreach()
 ?>
 </select>

这是我的PHP,它输出的HTML看起来很好,并且在适当的位置包含所选的=“选中”适当的值,但无论出于何种原因它们实际上都没有被选中。这不是HTML中的可能吗?如果我只有一个可能的选择,这对我来说很好,但我似乎无法在网上找到它只支持单个标签的任何地方。如果这是不可能的,有没有办法实现类似的东西?

编辑:正如大家所说,它运作良好。无论出于何种原因,在Firefox中刷新页面(使用get变量构建)都会刷新源代码,但不会刷新浏览器中显示的内容,关闭页面并重新打开它使其按预期工作。

2 个答案:

答案 0 :(得分:3)

是的,带有<select>属性的multiple代码可以有多个带selected="selected"属性的选项,这会自动在页面加载时选择这些选项。

答案 1 :(得分:0)

是HTML中的元素可以选择多个选项。如果它有多个属性。

以下是代码

<select multiple>
            <option>India</option>
            <option selected>USA</option>
            <option>Canada</option>
            <option selected>China</option>
</select>