DOM Element Selection
The selector syntax used by jQuery is a combination of CSS1-3 and XPath selectors.
With jQuery you can select elements by attributes, element type, element position, CSS class, or a combination of these.
The syntax for selecting elements is as follows:
$(selector,[context])
or
jQuery(selector, [context])
To select elements by tag name, use the tag name in the selector. For example, $("div") retrieves all of the divs in a document.
<!DOCTYPE html>
<html>
<head>
<script src="http://java2s.com/Book/JavaScriptDemo/jQuery/jquery-1.8.0.min.js"></script>
<script>
$(document).ready(function(){
var wrappedElements = $("div");
document.writeln(wrappedElements.length);
});
</script>
</head>
<body>
<div id="1"></div>
<div id="2"></div>
<div id="3"></div>
</body>
</html>
By default, when selecting elements, jQuery searches through the entire DOM tree. To search through a subtree of the DOM, pass an optional second parameter to the jQuery function to give the selection a context.
Retrieve from a series of links for a single div:
$("a","#div");
<html>
<head>
<style>
.test{ border: 1px solid red; }
</style>
<script src="http://java2s.com/Book/JavaScriptDemo/jQuery/jquery-1.8.0.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
alert($(":hidden", document.body).length);
});
</script>
</head>
<body>
<span></span>
<div></div>
<div style="display:none;">Hider!</div>
<div></div>
<div></div>
<form>
<input type="hidden" />
<input type="hidden" />
<input type="hidden" />
</form>
<span></span>
</body>
</html>
The basic CSS Selectors supported by jQuery
Selector | Description |
---|---|
* | Matches any element. |
E | Matches element with tag name E. |
E F | Matches elements with tag name F that are descendents of E. |
E>F | Matches elements with tag name F that are direct children of E. |
E+F | Matches elements F immediately preceded by sibling E. |
E~F | Matches elements F preceded by any sibling E. |
E:has(F) | Matches elements with tag name E that have at least one descendent with tag name F. |
E.C | Matches elements E with class name C. Omitting E is the same as *.C. |
E#I | Matches element E with id of I. Omitting E is the same as *#I. |
E[A] | Matches elements E with attribute A of any value. |
E[A=V] | Matches elements E with attribute A whose value is V. |
E[A^=V] | Matches elements E with attribute A whose value begins with V. |
E[A$=V] | Matches elements E with attribute A whose value ends with V. |
E[A*=V] | Matches elements E with attribute A whose value contains V. |
Home
JavaScript Book
jQuery
JavaScript Book
jQuery
Selector:
- jQuery Selector
- DOM Element Selection
- Filter Selectors
- Selecting by Position
- Filtering by Content
- Filtering by Relationships
- Escape characters
- ID attribute
- Tag Name
- Class Name
- Descendant
- Child (E > F)
- General sibling (E ~ F)
- Multiple expressions (E, F, G)
- Universal (*)
- Numbered child (:nth-child(n/even/odd/expr))
- First child (:first-child)
- Last child (:last-child)
- Only child (:only-child)
- Not (:not(E))
- Empty (:empty)
- Attribute selectors
- Attribute ([attr])
- Attribute equals ([foo=bar])
- Attribute does not equal ([foo!=bar])
- Attribute begins with ([foo^=bar])
- Attribute ends with ([foo$=bar])
- Attribute contains ([foo*=bar])
- Attribute contains word ([foo~=bar])
- Attribute contains prefix ([foo|=bar])
- Attribute exists $("[attributeName*='value']");
- Form selectors (:input)
- Form text fields (input:text)
- Form Password field (input:password)
- Form Radio button (input:radio)
- Form Checkbox (input:checkbox)
- Form Submit button (input:submit)
- Form Image button (input:image)
- Form Reset button (input:reset)
- Form button (input:button)
- Form File upload (input:file)
- Form Enabled form element (input:enabled)
- Form Disabled form element (input:disabled)
- Form Checked box (input:checked)
- Form Selected option (input:selected)
- Element at index (:eq(n))
- Greater than (:gt(n))
- Less than (:lt(n))
- First (:first)
- Last (:last)
- Even element (:even)
- Odd element (:odd)
- Is parent (:parent)
- Contains text (:contains(text))
- Contains element (:has(E))
- Visible (:visible)
- Hidden (:hidden)
- Header element (:header)
- Currently animating (:animated)
- $(this)
- Custom User Selectors