---------------------- <a href="http://edu.youkuaiyun.com"target="blank">ASP.Net+Android+IO开发S</a>、<a href="http://edu.youkuaiyun.com"target="blank">.Net培训</a>、期待与您交流! ----------------------
DOM(Document Object Model):文档对象模型,它是将标记型文档及其中的内容(如标记,属性,文本)封装成了对象,这样可以用对象的方法对其进行操作.
节点有3个共同的属性,节点名称(nodeName),节点类型(notdeType)和节点值(nodeValue)获取节点有3中方法,分别是getElementById,getElementsByName,getElementsBytagName.
一.getElementById:标签中的id尽量保证唯一性,只有在大的区域,为了方便于获取和操作,才定义id属性.返回的是一个节点对象,当设置多个相同名字的id时,也只获取第一个.
<script type="text/javascript">
function docdemo(){ //对测试按钮进行描述
var tadNode=document.getElementById("tabid");
/*tadNode.border="1";
tadNode.borderColor="yellow";*/ //通过名称.属性获取,在不同的浏览器会有不同的效果
tabNode.setAttribute("border",1); //通过方法获取,建议使用
tabNode.setAttribute("borderColor","red");
}
</script>
</head>
<body>
<input type="button" name="button" value="测试按钮" οnclick="docdemo()"/>
<div >
这是div区域
</div>
<table id="tabid"> <!--给table加表单属性-->
<tr>
<td>单元格一</td>
<td>单元格二</td>
</tr>
<tr>
<td>单元格三</td>
<td>单元格四</td>
</tr>
</table>
二.getElementsByName:name属性只存在于表单里的组件,name属性很容易重复,因此它的返回值是一个节点数组.可先获取长度,通过数组的方式获取节点的属性.这样便可以对用户输入的数据进行操作.
<script type="text/javascript">
function docdemo(){ //对测试按钮进行描述
var Nodes=document.getElementsByName("sex"); //通过name获取
for(var x=0;x< tadNode.length;x++){ //
alert(tadNode[x].value); //遍历数组,获取name中的所有值
}
}
</script>
</head>
<body>
用户名:<input type="text" name="user" />
性别:<input type="radio" name="sex" value="man" />男<input type="radio" name="sex" value="woman" />女
<input type="button" name="button" value="测试按钮" οnclick="docdemo()"/>
三,getElementsBytagName,通过标签名字获取节点对象,标签易重复,因此它返回的也是一个节点数组.
<script type="text/javascript">
function docdemo(){ //对测试按钮进行描述
var divNodes=document.getElementsByTagName("div")[0];
alert(divNodes.innerText); //获取标签内封装的文本数据
divNodes.innerText="可以对标签内数据进行更改"; //更改标签内文本
}
</script>
</head>
<body>
<input type="button" name="button" value="测试按钮" οnclick="docdemo()"/>
<div >
这是div区域
</div>
注意:获取容器标签用通用方法getElementsBytagName,即标签名.getElementsBytagName.
特殊的Id:在IE中,只要具备了id的属性,就认为id的值代表了节点值,但是火狐不支持此观点,因此不建议用id代表节点对象.
---------------------- <a href="http://edu.youkuaiyun.com"target="blank">ASP.Net+Android+IO开发S</a>、<a href="http://edu.youkuaiyun.com"target="blank">.Net培训</a>、期待与您交流! ----------------------