如何将下拉列表设置为多个值?

5

将下拉列表设置为多个值的语法如下:

$("#multiple").val(["Multiple2", "Multiple3"]); 

我的问题是我不知道有多少个值。那么如何使用来自数组的多个值动态设置下拉列表?


1
你能否构建一个包含所有值的数组,并将其传递给 val(..) 函数? - Alexander Pavlov
1
@Royi Namir:你可以设置属性multiple="multiple"。 - Luke
@RoyiNamir,一直以来:http://www.w3.org/TR/html4/interact/forms.html#adef-multiple - Darin Dimitrov
@DarinDimitrov 是的。忘记了。 (还有DDL的关联是所选值的1个值... :)) - Royi Namir
3个回答

3

您的代码应该像这个实时演示中所示那样工作。

标记:

<select multiple="multiple" id="multiple">
    <option value="1">item 1</option>
    <option value="2">item 2</option>
</select>

脚本:

$('#multiple').val(['1', '2']);

结果:

这里输入图片描述


(注:这是一个关于 IT 技术的结果展示)

对我来说,它更像是一条评论,所以我将其标记为“不是答案”。没有看到它是一个小提琴。我感觉很愚蠢...抱歉,希望你不介意。 - Starx
@Starx,希望管理员在删除答案之前能仔细阅读它。 - Darin Dimitrov

0

进行检查以了解数组是否有更多的值:

      if (array[i]) { //DO WHAT YOU NEED}

0

我不清楚你想要实现什么。 你可以使用数组作为val()的参数和this is the result

> Passing an array of element values allows matching <input
> type="checkbox">, <input type="radio"> and <option>s inside of n
> <select multiple="multiple"> to be selected. In the case of <input
> type="radio">s that are part of a radio group and <select
> multiple="multiple"> the other elements will be deselected.

这意味着这只会影响启用多选项的选择器(而不是简单的下拉列表)。

如果相反地,“设置为多个值”意味着向现有选择器添加选项,则 val() 不适用于此(您可以在这里查看相关信息)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接