有多种方法可以直接获取输入文本框的值(而不包装在表单元素内):
方法一
document.getElementById('textbox_id').value
获取所需文本框的值
例如
document.getElementById("searchTxt").value;
注意:方法二、三、四和六返回一个元素集合,因此使用[整数]来获取所需的出现次数。 对于第一个元素,使用[0]
,
对于第二个元素,请使用[1]
,依此类推...
方法二
使用 document.getElementsByClassName('class_name')[whole_number].value
,该方法返回一个活动的 HTMLCollection
例如
document.getElementsByClassName("searchField")[0].value;
如果这是页面中的第一个文本框,则使用此方法。
方法三
使用document.getElementsByTagName('tag_name')[whole_number].value
,该方法也返回一个活动的HTMLCollection
例如
document.getElementsByTagName("input")[0].value;
如果这是页面中的第一个文本框,则使用此方法。
方法四
document.getElementsByName('name')[whole_number].value
,该方法也返回一个活动的NodeList
例如
document.getElementsByName("searchTxt")[0].value;
如果这是页面中第一个带名称“searchtext”的文本框,则使用此方法。
方法五
使用强大的document.querySelector('selector').value
,该方法使用CSS选择器选择元素
例如
document.querySelector('#searchTxt').value;
通过id选择
document.querySelector('.searchField').value;
通过class选择
document.querySelector('input').value;
通过标签名选择元素
document.querySelector('[name="searchTxt"]').value;
通过名称选择元素
方法6
document.querySelectorAll('选择器')[整数].value
同样使用CSS选择器来选取元素,但它返回包含所有符合选择器的静态节点列表。
例如
document.querySelectorAll('#searchTxt')[0].value;
通过ID选择元素
document.querySelectorAll('.searchField')[0].value;
通过类选择元素
document.querySelectorAll('input')[0].value;
通过标签名选择元素
document.querySelectorAll('[name="searchTxt"]')[0].value;
通过名称选择元素
支持性
浏览器 |
方法1 |
方法2 |
方法3 |
方法4 |
方法5/6 |
IE6 |
Y(有错) |
N |
Y |
Y(有错) |
N |
IE7 |
Y(有错) |
N |
Y |
Y(有错) |
N |
IE8 |
Y |
N |
Y |
Y(有错) |
Y |
IE9 |
Y |
Y |
Y |
Y(有错) |
Y |
IE10 |
Y |
Y |
Y |
Y |
Y |
FF3.0 |
支持 |
支持 |
支持 |
支持 |
不支持 IE=Internet Explorer |
FF3.5/FF3.6 |
支持 |
支持 |
支持 |
支持 |
支持 FF=Mozilla Firefox |
FF4b1 |
支持 |
支持 |
支持 |
支持 |
支持 GC=Google Chrome |
GC4/GC5 |
支持 |
支持 |
支持 |
支持 |
支持 Y=YES,N=NO |
Safari4/Safari5 |
支持 |
支持 |
支持 |
支持 |
支持 |
Opera10.10/ |
|
|
|
|
|
Opera10.53/ |
支持 |
支持 |
支持 |
支持(有Bug) |
支持 |
Opera10.60 |
|
|
|
|
|
Opera 12 |
支持 |
支持 |
支持 |
支持 |
支持 |
有用的链接
- 点击此处查看所有这些方法的支持情况及包括更多细节的错误信息
- 静态集合和动态集合的区别 点击这里
- NodeList 和 HTMLCollection 的区别 点击这里
document.getElementByID("<%=searchTxt.ClientID %>").value
也是有效的,当document.getElementByID("searchText").value
失效时,我已经使用过它。 - Amicable