jQuery 属性选择器:除了不以指定字符串结尾的任何东西吗?
Posted
技术标签:
【中文标题】jQuery 属性选择器:除了不以指定字符串结尾的任何东西吗?【英文标题】:jQuery attribute selector: anything but not ending with specified string? 【发布时间】:2012-01-08 14:23:42 【问题描述】:我需要在jquery中选择元素,其属性值不以指定的子字符串结尾。
它必须等同于“匹配所有元素,但那些以该属性中给定子字符串结尾的元素”。
所以e[a!@#=finstr]
匹配 e、e a="finstring"
等,而不匹配 e a="somethingfinstr"
、e a="finstr"
。
帮忙,谢谢。
【问题讨论】:
【参考方案1】:类似
$(':not([name$="finstr"])')
应该做的伎俩!
编辑:或者
$(selector).not('[name$="value"]');
【讨论】:
我猜你已经将name$="finstr"
包裹在[
]
中
但是如果我有一个类 '.editable:not([name$=".notthis"]) - 我想知道需要什么改变才能让它工作【参考方案2】:
试试:
$('*').not('[attribute$="finishstring"]')
【讨论】:
【参考方案3】:尝试反转:属性以选择器结尾 [name$="value"]。 使用 jQuery(':not(selector)')。
类似这样的::not([name$="value"])
【讨论】:
【参考方案4】:我认为这可行,以链接为例-
$("a:not([id$='hello'])"
演示 - http://jsfiddle.net/CJH2M/
【讨论】:
以上是关于jQuery 属性选择器:除了不以指定字符串结尾的任何东西吗?的主要内容,如果未能解决你的问题,请参考以下文章