The HTMLHyperlinkElementUtils.search property is a search string, also called a query string, that is USVString containing a '?' followed by the parameters of the URL.
Modern browsers provide URLSearchParams and URL.searchParams to make it easy to parse out the parameters from the querystring.
Syntax
string = object.search; object.search = string;
Examples
// Let an <a id="myAnchor" href="https://developer.mozilla.org/en-US/docs/HTMLHyperlinkElementUtils.search?q=123"> element be in the document
var anchor = document.getElementById("myAnchor");
var queryString = anchor.search; // Returns:'?q=123'
// Further parsing:
let params = new URLSearchParams(queryString.substring(1)); // substring(1) to drop the leading "?"
let q = parseInt(params.get("q")); // is the number 123
Specifications
| Specification | Status | Comment |
|---|---|---|
| WHATWG HTML Living Standard The definition of 'HTMLHyperlinkElementUtils.search' in that specification. |
Living Standard | Initial definition. |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic support | (Yes) [1] | (Yes) | 22 (22) [3][4] | (Yes) [2] | (Yes) [2] | (Yes) [2] |
| Feature | Android Webview | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|---|
| Basic support | (Yes) [1] | (Yes) [1] | (Yes) | 22.0 (22) [3][4] | (Yes) [2] | (Yes) [2] | (Yes) [2] |
[1] Starting in Chrome 52, this property was moved to URL
[2] Though not grouped in a single abstract interface, this method is directly available on the interfaces that implement it, if this interface is supported.
[3] From Gecko 22 to Gecko 44, this property was on the URLUtils mixin. It has been moved either on the HTMLHyperlinkElementUtils mixin, or directly on the interface.
[4] Before Firefox 53, the pathname and search HTMLHyperLinkElementUtils properties returned the wrong parts of the URL. For example, for a URL of http://z.com/x?a=true&b=false, pathname would return "/x?a=true&b=false" and search would return "", rather than "/x" and "?a=true&b=false" respectively. This has now been fixed.
See also
- The
HTMLHyperlinkElementUtilsmixin it belongs to.