【前言】
大家经常会从input标签取valve。就这么一个简单的动作,各个浏览器都不能兼容。但随着技术的发展,会逐步达成统一。尽管如此,我还是来分享下自己的实践结果。
【实验过程】
先把要实验的js代码展现出来。
<div id="testDivID" name="testDivName" value="divTagValue" defMyTag="Lionbule">1</div> <script> (function(){ var id = document.getElementById("testDivID").attributes["id"].value; var name = document.getElementById("testDivID").attributes["name"].value; var value = document.getElementById("testDivID").attributes["value"].value; var myTag = document.getElementById("testDivID").attributes["defMyTag"].value; alert(id +" "+ name +" "+value+" "+myTag); })(); </script>
在IE8、Firefox3.6、Chrome6.0下测试通过。换句话说,用上述获取标签属性值的方式通用、可靠。
但在实验过程中出现一个问题。如果div容器的内容为空或空格,则只有chrome能正常执行,IE、firefox均报出“document.getElementById("testDivID") is null.”。所以我在例子中特意写了个1,无奈而为之。
【实践结果及建议】
1、获取html中任意标签的属性值均可采用如下方式:
document.getElementById("xxx").attributes["***"].value;
2、Jquery对html DOM的操作封装的至上完美,兼容性灰常好,所以建议使用Jquery。