我正在尝试查找元素 ID 包含特定文本的页面上的所有元素。然后,我需要根据它们是否隐藏来过滤找到的元素。任何帮助是极大的赞赏。
问问题
217703 次
4 回答
231
$('*[id*=mytext]:visible').each(function() {
$(this).doStuff();
});
请注意,选择器开头的星号“*”匹配所有元素。
于 2009-07-30T13:51:41.400 回答
162
如果你是通过Contains找到的,那么它会是这样的
$("input[id*='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
如果你是通过Starts With找到的,那么它会是这样的
$("input[id^='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
如果你是通过Ends With找到的,那么它会是这样的
$("input[id$='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
如果要选择id 不是给定字符串的元素
$("input[id!='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
如果要选择名称包含给定单词的元素,以空格分隔
$("input[name~='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
如果要选择id 等于给定字符串或以该字符串开头后跟连字符的元素
$("input[id|='DiscountType']").each(function (i, el) {
//It'll be an array of elements
});
于 2014-02-28T06:03:14.387 回答
22
这将选择 ID 包含 'foo' 且可见的所有 DIV
$("div:visible[id*='foo']");
于 2009-07-30T13:57:24.327 回答
7
感谢你们俩。这对我来说非常有效。
$("input[type='text'][id*=" + strID + "]:visible").each(function() {
this.value=strVal;
});
于 2009-07-30T15:16:34.707 回答