jQuery选择器:多重选择vs select

问题描述:

是否有可能通过jQuery来选择不同的多重选择?jQuery选择器:多重选择vs select

我遇到的问题是我有一个通用的js调用,对id做些什么。但是在一些页面上它有不同的目的。

因此我想要认识到差异。

$("select#categories[multiselect]").doOneThing; //multiselect 
$("select#categories").doAnotherThing; //normal single select 

可能吗?

具有多个可选选项的<select>元素的正确属性名称是多个。您可以使用“has attribute”选择器来选择具有multiple属性的元素,并将其与:not()合并以选择仅允许单个选择的元素。

因此,你的jQuery选择应该是:

$("select#categories[multiple]") // <select> with multiple 
$("select#categories:not([multiple])") // <select> with single only 

http://www.w3.org/TR/html401/interact/forms.html#edef-OPTION

如果你有这样的事情(XHTML):

<select id="categories" size="3" multiple="multiple"> 
    <option>1</option> 
    <option>2</option> 
    <option>3</option> 
</select> 

您可以创建一个选择,即检查multiple-属性。试试这样的:

$('select#categories[multiple="multiple"]').doOneThing();