我需要通过他们的id的一部分找到元素,在另一个id中。
例如,在 form1000 的表单中以 bc1 _ 和 bc2 _ 开头的所有元素。
我已经尝试了
var o=$('#form1000').eq('id^=bc1_','id^=bc2_');
var o=$('#form1000[id^=bc1_],#form1000[id^=bc2_]');
还有一些变化,但我没有得到任何结果。有人能指出我正确的方向吗?
答案 0 :(得分:2)
试试这个:
var o=$('#form1000 [id^=bc1_],#form1000 [id^=bc2_]');
或
var o = $('#form1000').find('[id^=bc1_], [id^=bc2_]');
答案 1 :(得分:0)
改为使用:
var o = $('#form1000').find('[id^=bc1_], [id^=bc2_]');
为什么以前的版本无效:
var o=$('#form1000').eq('id^=bc1_','id^=bc2_');
eq
将匹配元素集合减少到指定索引处的元素。 - 因此它返回一个数字,而不是jQuery对象。此外,您必须使用[...]
作为属性。
var o=$('#form1000[id^=bc1_],#form1000[id^=bc2_]');
这将选择包含以#form1000
或bc_1
开头的ID的bc_2
元素,但元素可以有一个ID。
答案 2 :(得分:0)
摆弄示例:http://jsfiddle.net/tPUE4/1/
$("#form1000 [id^='bc1'], #form1000 [id^='bc2']").css("background","green");