document.表单名称.对象名称.属性值 这种方式IE支持 第三方的可能不支持,建议使用 getElementById(), getElementsByName(), and getElementsByTagName() 这几个方 法,需要注意得是getElementsByName()取出得是个数组.
网上,我查找了相关得资料,提供出来供大家参考:
Most third-party browsers are “strict standards” implementations, meaning that they implement W3C and ECMA standards and ignore most of the proprietary
object models of Internet Explorer and Netscape.If the demographic for your Web site includes users likely to use less common browsers, such as Linux
aficionados, it might be a good idea to avoid IE-specific features and use the W3C DOM instead. by Internet Explorer 6, we see that IE implements
significant portions of the W3C DOM.
这段话的意思是大多数第三方浏览器只支持W3C的DOM,如果你的网站用户使用其他的浏览器,那么你最好避免使用IE的私有属性。而且IE6也开始支持W3C DOM。
毕竟大多数人还不了解标准,在使用标准前,你还可以在你的网页中用document.all[]访问文档对象前面写到WEB标准,今天继续WEB标准下可以通过getElementById(),
getElementsByName(), and getElementsByTagName()访问DOCUMENT中的任一个标签:
1、getElementById()
getElementById()可以访问DOCUMENT中的某一特定元素,顾名思义,就是通过ID来取得元素,所以只能访问设置了ID的元素。
比如说有一个DIV的ID为docid:
程序代码
<div id="docid"></div>
那么就可以用getElementById("docid")来获得这个元素。
2、getElementsByName()
这个是通过NAME来获得元素,但不知大家注意没有,这个是GET ELEMENTS,复数ELEMENTS代表获得的不是一个元素,为什么呢?
因为DOCUMENT中每一个元素的ID是唯一的,但NAME却可以重复。打个比喻就像人的身份证号是唯一的(理论上,虽然现实中有重复),但名字重复的却很多。如果一个文档
中有两个以上的标签NAME相同,那么getElementsByName()就可以取得这些元素组成一个数组。
比如有两个DIV:
程序代码
<div name="docname" id="docid1"></div>
<div name="docname" id="docid2"></div>
那么可以用getElementsByName("docname")获得这两个DIV,用getElementsByName("docname")[0]访问第一个DIV,用getElementsByName("docname")[1]访问第二个DIV。
3、getElementsByTagName()
这个呢就是通过TAGNAME(标签名称)来获得元素,一个DOCUMENT中当然会有相同的标签,所以这个方法也是取得一个数组。
下面这个例子有两个DIV,可以用getElementsByTagName("div")来访问它们,用getElementsByTagName("div")[0]访问第一个DIV,用
getElementsByTagName("div")[1]访问第二个DIV。
总结一下标准DOM,访问某一特定元素尽量用标准的getElementById(),访问标签用标准的getElementByTagName(),但IE不支持getElementsByName(),所以就要避免使用
getElementsByName(),但getElementsByName()和不符合标准的document.all[]也不是全无是处,它们有自己的方便之处,用不用那就看网站的用户使用什么浏览器,由你自己
决定了
详细解决方案
获取表单对象,getElementById(), getElementsByName(), and getElementsByTagName() 跟用法
热度:564 发布时间:2012-11-25 11:44:31.0
相关解决方案
- 当innerHTML遇上document.getElementById
- document.getElementById(。)对象不存在,该如何解决
- document.getElementById("input").checked;转换成Jquery,如何写
- javascript中document.getElementById()老是返回空值
- 无刷新更换验证码图片"onclick="document.getElementById('ImgCode').src='./VerifyCode.aspx'"无效,该怎么处理
- ASP.NET中document.getElementsByTagName(""); 的有关问题
- Microsoft JScript 运行时异常: 'document.getElementById(.)' 为空或不是对象
- document.getElementById("TextBox")解决办法
- document.GetElementById('PIDIn').select()对象不支持此属性或方法?该如何处理
- JS.为什么小弟我的document.getElementById("TextBox3")获取不到值
- div runat=server后document.getElementById("Div1").style.display="none"失败解决方案
- document.getElementById()里面能放参数吗?解决办法
- getElementById 传值有关问题
- getElementById 提示'缺少对象'的有关问题 找不到原因
- JScript 运行时异常: getElementById(.)' 为空或不是对象
- 为什么小弟我用document.getElementById()没有办法验证数据?一按提交就自动转到servlet里了,求教.
- 小心IE 上document.getElementById()的陷阱
- 深入挖掘document.getElementsByTagName()方法的返回值
- 小心IE 下document.getElementById()的陷阱
- js 用document.getElementsByName()获取表格数据,该如何解决
- 小心IE 上document.getElementById()的陷阱
- 一个小疑点, document.getElementById("Textbox1") 后面没有value这些提示了
- 求 window.parent.document.getElementById(.)为空或不是对象的解决方法
- document.getElementById("test").innerHTML= 这里内容如何写
- document.getelementbyid("page").innerHTML红狐不兼容
- getElementById 不能取得对象。找不出原因
- document.getElementsByTagName("BODY")[零].innerHTML获取失败
- html标签怎么被document.getElementById()调用
- document.getElementById('text1'). 话语解析!
- ie9,10 getElementById 取不到值,咱办?解决思路