Attribute Not Equal Selector [name!=”value”]


attributeNotEqual selector

Description: Select elements that either don't have the specified attribute, or do have the specified attribute but not with a certain value.

  • version added: 1.0jQuery( "[attribute!='value']" )

    attribute: An attribute name.

    value: An attribute value. Can be either a valid identifier or a quoted string.

This selector is equivalent to :not([attr='value']).

Additional Notes:

  • Because [name!="value"] is a jQuery extension and not part of the CSS specification, queries using [name!="value"] cannot take advantage of the performance boost provided by the native DOM querySelectorAll() method. For better performance in modern browsers, use $( "your-pure-css-selector" ).not( "[name='value']" ) instead.

Example:

Finds all inputs that don't have the name 'newsletter' and appends text to the span next to it.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>attributeNotEqual demo</title>
<script src="https://code.jquery.com/jquery-3.7.1.js"></script>
</head>
<body>
<div>
<input type="radio" name="newsletter" value="Hot Fuzz">
<span>name is newsletter</span>
</div>
<div>
<input type="radio" value="Cold Fusion">
<span>no name</span>
</div>
<div>
<input type="radio" name="accept" value="Evil Plans">
<span>name is accept</span>
</div>
<script>
$( "input[name!='newsletter']" ).next().append( "<b>; not newsletter</b>" );
</script>
</body>
</html>

Demo: