I am working on a search with JavaScript. I would use a form, but it messes up something else on my page. I have this input text field:
<input name="searchTxt" type="text" maxlength="512" id="searchTxt" class="searchField"/>   And this is my JavaScript code:
<script type="text/javascript">   function searchURL(){     window.location = "http://www.myurl.com/search/" + (input text value);   } </script>   How do I get the value from the text field into JavaScript?
We can get the value of the text input field using various methods in JavaScript. There is a text value property that can set and return the value of the value attribute of a text field. Also, we can use the jquery val() method inside the script to get or set the value of the text input field.
Definition and Usage. The value property sets or returns the value of the value attribute of a text field. The value property contains the default value OR the value a user types in (or a value set by a script).
The line document. getElementById("firstname"). value accesses the text box with an id of firstname and retrieves the value which the user has entered into this text box.
There are various methods to get an input textbox value directly (without wrapping the input element inside a form element):
Method 1:
document.getElementById('textbox_id').valueto get the value of desired boxFor example,
document.getElementById("searchTxt").value;
Note: Method 2,3,4 and 6 returns a collection of elements, so use [whole_number] to get the desired occurrence. For the first element, use [0], for the second one use 1, and so on...
Method 2:
Use
document.getElementsByClassName('class_name')[whole_number].valuewhich returns a Live HTMLCollectionFor example,
document.getElementsByClassName("searchField")[0].value;if this is the first textbox in your page.
Method 3:
Use
document.getElementsByTagName('tag_name')[whole_number].valuewhich also returns a live HTMLCollectionFor example,
document.getElementsByTagName("input")[0].value;, if this is the first textbox in your page.
Method 4:
document.getElementsByName('name')[whole_number].valuewhich also >returns a live NodeListFor example,
document.getElementsByName("searchTxt")[0].value;if this is the first textbox with name 'searchtext' in your page.
Method 5:
Use the powerful
document.querySelector('selector').valuewhich uses a CSS selector to select the elementFor example,
document.querySelector('#searchTxt').value;selected by iddocument.querySelector('.searchField').value;selected by classdocument.querySelector('input').value;selected by tagnamedocument.querySelector('[name="searchTxt"]').value;selected by name
Method 6:
document.querySelectorAll('selector')[whole_number].valuewhich also uses a CSS selector to select elements, but it returns all elements with that selector as a static Nodelist.For example,
document.querySelectorAll('#searchTxt')[0].value;selected by iddocument.querySelectorAll('.searchField')[0].value;selected by classdocument.querySelectorAll('input')[0].value;selected by tagnamedocument.querySelectorAll('[name="searchTxt"]')[0].value;selected by name
Support
Browser          Method1   Method2  Method3  Method4    Method5/6 IE6              Y(Buggy)   N        Y        Y(Buggy)   N IE7              Y(Buggy)   N        Y        Y(Buggy)   N IE8              Y          N        Y        Y(Buggy)   Y IE9              Y          Y        Y        Y(Buggy)   Y IE10             Y          Y        Y        Y          Y FF3.0            Y          Y        Y        Y          N    IE=Internet Explorer FF3.5/FF3.6      Y          Y        Y        Y          Y    FF=Mozilla Firefox FF4b1            Y          Y        Y        Y          Y    GC=Google Chrome GC4/GC5          Y          Y        Y        Y          Y    Y=YES,N=NO Safari4/Safari5  Y          Y        Y        Y          Y Opera10.10/ Opera10.53/      Y          Y        Y        Y(Buggy)   Y Opera10.60 Opera 12         Y          Y        Y        Y          Y   Useful links
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With