jQuery只匹配div的id的一部分

昨天晚上我遇到了一个不寻常的情况。

我只需要匹配id的一部分。 让我以一个例子来清楚你

我有几个divs

<div id="sales_info_1">... ...... ...... ...... ...</div> <div id="sales_info_2">... ...... ...... ...... ...</div> <div id="sales_info_3">... ...... ...... ...... ...</div> 

和jQuery的喜欢

 jQuery("div#dont_know_what_to_write_here").bind("click", function(){ ... ...... ...... ...... ... }); 

我只需要匹配sales_info ,忽略_1,_2或_anything,任何人都可以build议我如何做到这一点?

谢谢

您可以使用“Starts With”select器 :

 $('div[id^="sales_info_"]') 

我宁愿build议你为你的元素使用一个独特的类名,但你可以select。

你想要的属性开始于select器 :

 $('div[id^="sales_info"]').bind( ... ); 

试试这个

 $("div[id^='sales_info_']").bind( ... ); 

或者,将class="sales_info"添加到您的HTML标记中。

然后,这样做:

 $(".sales_info").bind("click", function() { ... } 

你可以使用CSSselect器

试试这个代码

HTML

 <div id="sales_info_1"></div> <div id="user_info_1"></div> <div id="sales_info_2"></div> <div id="user_info_2"></div> <div id="sales_info_3"></div> <div id="user_info_3"></div> 

CSS

 .red{ display:block; float:left; width:50px; height:20px; background-color:#FF0000;} .blue{ display:block; float:left; width:50px; height:20px; background-color:#0000FF;} 

jQuery的

 $('div[id^="sales"]').addClass('red'); $('div[id^="user"]').addClass('blue'); 

cssselect器^=将select以指定值开头的ID并添加CSS样式。