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样式。