为了动态修改XHTML元素,必须能访问XHTML元素,DOM提供了2种方式来访问XHTML元素:
-- 根据id访问
-- 利用节点关系访问
(1)根据ID访问XHTML元素
document.getElementByID(idVal) : 返回文档中id属性值为idVal的XHTML元素
例如:
<script type="text/javascript">
function accessById()
{
alert(document.getElementById("a").innerHTML + "\n"
+ document.getElementById("b").value);
}
</script>
<body>
<div id="a">中国</div>
<textarea rows="3" cols="25" id="b">我是中国人</textarea>
<br />
<input type="button" value="访问" οnclick="accessById()" />
</body>
(2)利用节点关系访问XHTML元素
一旦获取了某个XHTML元素,由于该元素实际上与DOM树的某个节点对应,因此可以利用节点间的父子、兄弟关系来访问XHTML元素。
利用节点关系访问XHTML元素的属性和方法如下:
Node parentNode:返回当前节点的父节点。只读属性
Node previousSibling: 返回当前节点的前一个兄弟节点,只读属性
Node nextSibling: 返回后一个兄弟节点
Node[] childNodes: 返回当前节点的所有子节点,只读属性
Node[] getElementsByTagName(tagName): 返回当前节点的具有指定标签名的所有子节点。
Node firstChild: 返回当前节点的第一个子节点
Node lastChild:最后一个子节点
(3)访问表单域控件
表单在DOM 中由HTMLFormElement对象表示,常用属性:
action: 指定表单的提交地址
elements:返回表单内全部表单域控件所组成的数组
length: 返回表单域的个数
method: 返回表单的method属性
target: 用户提交表单时的结果窗口
reset();重设表单
submit():提交表单
访问HTMlFormElement的更有效率的方法
formObj.elementName : 返回表单中id或elementName的表单域控件
(4)访问列表框、下拉菜单的选项
HTMLSelectElement代表一个列表或下拉菜单,HTMLSelectElement对象除了可使用普通XHTML元素的各种属性和方法外,还支持如下额外属性。
form: 返回所在表单对象
length:返回列表框、下拉列表的选项个数
options:返回所有选项组成的数组
selectedIndex:返回选中选项的索引
type:返回下拉列表的类型,即是否为多选。select-multiple or select-one
列表框、下拉菜单的选项由 HTMLOptionElement对象表示 常用属性如下:
form:
defaultSelected : 返回该选型是否默认被选中
index:索引
selected : 是否被选中
text: 返回该选项呈现出来的文本 即<option></option>之间的文本
value:返回每个选项的value值