使用jquery检索PHP中下拉列表的所有选定项


Retriving all selected items of a dropdown in PHP using jquery

我有一个表单,需要从一个下拉列表中选择多个项目,并在查询中使用它们。我使用了下拉列表的标记,并使用了"multiple"属性来允许多选。我想获取变量/数组中所有选定的项/索引,以便在查询中使用它。我尝试使用document.getElementById("状态选择")。在索引中选择,但我只得到1个,而不是全部。我甚至尝试在jquery中使用$('#statusselect option:selected'),但没有成功。

请帮我解决这个问题!!非常感谢。这是从数据库中提取值的下拉列表的代码。我想在单击按钮时获得变量中所有选定的值。

    echo "<td>Status<br>";
    echo "<select multiple name='"status'" size=5 id='"statusselect'">";
    foreach($status_all as $status)
     {
      if (isset($_GET['status']) && $_GET['status'] == $status)
       {
        echo "<option value='"$status'" selected>".status_in_words($status)."</option>";
       }
      else
       {
        echo "<option value='"$status'" >".status_in_words($status)."</option>";
       }
      }
    echo "</select>";
    echo "</td>";

jQuery :selected在multiple select上必须使用each来遍历所有元素。像http://api.jquery.com/selected-selector/建议使用:

<select name="garden" multiple="multiple">
    <option>Flowers</option>
    <option selected="selected">Shrubs</option>
    <option>Trees</option>
    <option selected="selected">Bushes</option>
    <option>Grass</option>
    <option>Dirt</option>
</select>
<script>
$("select option:selected").each(function () {
    // your code
});
</script>

下面是一个示例HTML:

<select id="multiselect" name="multiselect[]" multiple="multiple" size="5">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
</select>

使用jQuery:

$("#multiselect").val()

生成一个具有选定值的数组