在JavaScript中按类型访问元素
前段时间我在用JavaScript做一些测试, 并使用一个代码来获取具有特定类的所有元素的文本 现在我正试图制作类似的东西,但通过特定类型获取所有元素,例如所有元素在JavaScript中按类型访问元素,javascript,types,element,document,Javascript,Types,Element,Document,前段时间我在用JavaScript做一些测试, 并使用一个代码来获取具有特定类的所有元素的文本 现在我正试图制作类似的东西,但通过特定类型获取所有元素,例如所有元素type=“text” 有没有办法在JavaScript中实现这一点,或者我应该使用jQuery var xx = document.getElementsByClassName("class"); for (i=0;i<xx.length;i++){ var str=xx[i].innerHTML;
type=“text”
有没有办法在JavaScript中实现这一点,或者我应该使用jQuery
var xx = document.getElementsByClassName("class");
for (i=0;i<xx.length;i++){
var str=xx[i].innerHTML;
alert(str);
}
var xx=document.getElementsByClassName(“类”);
对于(i=0;i在普通的旧JavaScript中,您可以执行以下操作:
var inputs = document.getElementsByTagName('input');
for(var i = 0; i < inputs.length; i++) {
if(inputs[i].type.toLowerCase() == 'text') {
alert(inputs[i].value);
}
}
sizzle选择器引擎(为JQuery提供动力)为实现这一点做了完美的准备:
var elements = $('input[type=text]');
或
如果幸运的话,您只需要关注最新的浏览器,您可以使用:
document.querySelectorAll('input[type=text]')
“最近”不是指IE6和IE7,而是指var inputs=document.querySelectorAll(“输入[type=text]”)||
var inputs = document.querySelectorAll("input[type=text]") ||
(function() {
var ret=[], elems = document.getElementsByTagName('input'), i=0,l=elems.length;
for (;i<l;i++) {
if (elems[i].type.toLowerCase() === "text") {
ret.push(elems[i]);
}
}
return ret;
}());
(功能(){
var ret=[],elems=document.getElementsByTagName('input'),i=0,l=elems.length;
对于(;I您可以尝试document.getElementsByTagName(标记名)。另一件事是-iQuery是javascript,因此使用jQuery可以实现的任何功能都可以不使用它。现在这个方法得到了很好的支持:我使用它来获取提交按钮。
document.querySelectorAll('input[type=text]')
var inputs = document.querySelectorAll("input[type=text]") ||
(function() {
var ret=[], elems = document.getElementsByTagName('input'), i=0,l=elems.length;
for (;i<l;i++) {
if (elems[i].type.toLowerCase() === "text") {
ret.push(elems[i]);
}
}
return ret;
}());