js中获取标签里面的值除了document.getEelementById()和document.getEelementsByName()之外还有那些方法

js中获取标签里面的值除了document.getEelementById()和document.getEelementsByName()之外还有那些方法,第1张

原生JS获取某节点的方法:

documentgetEelementById(id);//根据id获取此节点

documentgetEelementsByName(name);//根据name获取此节点集

documentgetEelementsByTagName(tagName);//根据标签名获取此节点集

documentgetEelementsByClassName(className);//根据class名称获取此节点集

documentquerySelector(selector);//根据此选择器获取此节点集第一个节点

documentquerySelectorAll(selector);//根据此选择器获取所有此类节点集

var $container = documentgetElementById('container');

var $ul = $containergetElementsByTagName('ul');

// 要取的class

var className = 'col';

var ulCollection = [];

for (var i = 0; i < $ullength; i += 1) {

var ul = $ul[i],

classList = ulclassNamesplit(' ');

for (var j = 0; j < classListlength; j += 1) {

if (className === classList[j]) {

ulCollectionpush(ul);

break;

}

}

}

consolelog(ulCollection);

代码 请收下~~~~

<body>

<span class="okdog" lay-id="user1">1只狗</span><span class="okdog" lay-id="user2">2只狗</span><span class="okdog" lay-id="user3">3只狗</span><span class="okdog" lay-id="user4">4只狗</span><span class="okdog" lay-id="user5">5只狗</span>

<div id="showdog">输出结果</div>

<script>

var res = documentgetElementsByClassName('okdog');

for(var i=0;i<reslength;i++){

    res[i]addEventListener('click',function(e){

       alert(esrcElementinnerHTML)

    },false);

}

</script>

</body>

下面例子通过documentgetElementsByClassName("class1")获取所有同一class的元素,使用for循环把取得的div元素的值存入数组arr中,完成的代码如下:

运行结果,打印数组如下:

扩展资料:

js或jQuery获取html元素的值的常用方法:

例如:<div id="aa">值</div>

js写法:

alert(documentgetElementById('aa')innerHTML);

jQuery写法:

alert($('#aa')html());

说明如下:

innerHTML是取元素的内部html代码,此例中即div内部的所有html代码。

html()方法作用也是取dom节点的内部html内容,是jQuery中的函数方法。

原生JS通过id和class获取元素是用,documentgetElementById(IDname),documentgetElementsByClassName('ClassName');

兼容性:ID兼容,class 不兼容IE6,7,8

数量: 通过ID只能获取一个dom元素,通过class可以获取一组元素。

通用性:ID不能重复,class可以重复,所以class比较好用,这也是jQuery能被广泛应该的原因(选择器好)。

虽然没说要干嘛,但是我看了下脚本执行,你使用

var nav = documentgetElementById("list_menu");  这个要获取的只能是id的值,而不能是class的值的元素,如果你想要获取相同class名的元素的话,要用下面的命令。。。

var nav = documentgetElementsByClassName("list_menu");

通过你的代码我修改了下,执行的后果是。。

具体测试如下:

<script type="text/javascript" language="javascript">

windowonload=function (){

//var nav = documentgetElementById("list_menu");

var nav = documentgetElementsByClassName("list_menu");

alert(navlength);

var links = navgetElementsByTagName("li");

var lilen = navgetElementsByTagName("a");

var currenturl = documentlocationhref;

var last = 0;

for (var i=0;i<linkslength;i++)

{

var linkurl = lilen[i]getAttribute("href");

if(currenturlindexOf(linkurl)!=-1)

{

last = i;

links[last]className = "current";

}

}

}

</script>

把获取class的nav变量修改下就好了,~~~

以上就是关于js中获取标签里面的值除了document.getEelementById()和document.getEelementsByName()之外还有那些方法全部的内容,包括:js中获取标签里面的值除了document.getEelementById()和document.getEelementsByName()之外还有那些方法、谁能帮我把document.getElementById取值换成根据class取值,必有重谢、js获取class对象的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9706655.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存