2014-09-02 33 views
0

是否有可能在一个盒子中有多个预先选择的选项?下面是我的逻辑意义上的PHP代码,它似乎在正确的位置输出正确的HTML,但实际上并没有显示页面上选择的任何选项。在<select multiple>中可能有多个预选值?

<?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变量构建的页面)都会刷新源代码,但不刷新浏览器内部显示的内容,关闭页面并重新打开页面使其按预期工作。

+0

[应该工作。(http://jsfiddle.net/mblase75/xdwmn03b/)您是否尝试过多种浏览器?你能把最终的HTML输出发布到浏览器吗? – Blazemonger 2014-09-02 15:13:48

回答

3

是的,一个<select>标记与multiple属性可以有多个选项,selected="selected"属性,这将自动使这些选项在页面加载时被选中。

0

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

下面是代码

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