首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >jQuery中的多选择器链接?

jQuery中的多选择器链接?
EN

Stack Overflow用户
提问于 2011-04-21 05:24:02
回答 7查看 147.3K关注 0票数 72

通常,当我使用一个类作为选择器时,我会尝试对它使用一个"id“选择器,这样它就不会搜索整个页面,而只搜索类所在的区域。

然而,我有一个包含代码的局部视图。这个局部视图(公共代码)被包装在一个表单标记周围。

我有:

代码语言:javascript
复制
<form id="Create">
// load common code in from partial view
</form>

<form id="Edit">
// load common code in from partial view
</form>

现在,在这个通用代码中,我需要将一个插件附加到多个字段,所以我将这样做

代码语言:javascript
复制
$('#Create .myClass').plugin({ options here});

$('#Edit .myClass').plugin({options here});

所以这几乎是相同的代码。我想知道有没有办法让它看起来像这两个身份中的任何一个?

编辑

当我有选择器的变量时,我会遇到问题。

代码语言:javascript
复制
    my.selectors = 
    {
        A: '#Create',
        B: '#Edit',
        Plugin: ' .Plugin' 
    };

 $(selector.A+ selectors.Plugin, selector.B+ selectors.Plugin)

似乎没有运行。

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-04-21 05:27:15

您可以使用逗号组合多个选择器:

代码语言:javascript
复制
$('#Create .myClass,#Edit .myClass').plugin({options here});

或者,如果您要拥有大量表单元素,则可以向所有表单元素添加一个类,然后在该类中进行搜索。这不会给你带来所谓的限制搜索的速度节省,但如果我是你,我真的不会太担心这一点。浏览器在背后做了很多奇妙的事情来优化常见的操作--简单的类选择器可能更快。

票数 108
EN

Stack Overflow用户

发布于 2011-04-21 05:27:43

$("#Create").find(".myClass").add("#Edit .myClass").plugin({});

使用$.fn.add连接两个集合。

票数 47
EN

Stack Overflow用户

发布于 2011-04-21 05:27:53

您应该能够使用:

代码语言:javascript
复制
$('#Edit.myClass, #Create.myClass').plugin({options here});

jQuery | Multiple Selectors

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5736811

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档