DOM访问表单。DOM访问列表框,下拉菜单。DOM访问表格子元素。DOM对HTML元素的增删改操作。DOM添加、删除节点的方法。DOM为下拉菜单(select)添加选项的方式

action

返回该表单的提交地址

elements

返回表单内全部表单控件所组成的数组,通过数组可以访问表单内的任何表单控件。

length

返回表单内表单域的个数

method

返回表单内的method属性,主要有getpost两个值

target

确定提交表单时的结果窗口,主要有_self_blank_top

reset()submit()

重置表单和确定表单方法,重置提交

elements返回的数组中访问具体的表单控件语法如下:

.elements[index]

返回该表单中第index个表单控件

.elements[elementName]

返回表单内idnameelementName的表单控件

.elementName

返回表单内idnameelementName的表单控件

<form id="myform" action="https://www.baidu.com/" method="get" target="_blank">
<input name="username" type="text" value="张三"><br>
<input name="password" type="text" value="123"><br>
<select name="city">
<option value="shanghai">上海</option>
<option value="beijing" selected="selected">北京</option>
</select><br>
<input type="button" value="获取表单内第一个控件" onclick="get(form.elements[0])">                                        // 获取的三种方法
<input type="button" value="获取表单内第二个控件" onclick="get(form.elements['password'])">
<input type="button" value="获取表单内第三个控件" onclick="get(form.city)">
<input type="button" value="操作表单" onclick="submit()">
</form>

//获取表单元素节点
var form=document.getElementById("myform");
//获取action,method,target,表长
// var actions=form.action;
// var methods=form.method;
// var ta=form.target;
// var chang=form.length;
// alert(actions+"..."+methods+"..."+ta+"..."+chang)

function get(element){
alert(element.value);
}
//重置方法
function resett(){
form.reset();
}
//提交
function submitt(){
form.submit();
}

DOM访问列表框下拉菜单的常用属性:

form

返回列表框、下拉菜单所在的表单对象

length

返回列表框、下拉菜单的选项个数

options

返回列表框、下拉菜单里所有选项组成的数组

selectedIndex

返回下拉列表中选中选项的索引

type

返回下拉列表的类型,多选的话返回select-multiple,单选返回select-one

使用options[index]返回具体选项所对应的常用属性:

defaultSelected

返回该选项默认是否被选中

index

返回该选项在列表框、下拉菜单中的索引

selected

返回该选项是否被选中

text

返回该选项呈现的文本

value

返回该选项的value属性值

<select name="city" id="city" size="5">
<option value="beijing">北京</option>
<option value="shanghai" selected>上海</option>
<option value="tianjin">天津</option>
<option value="nabjing">南京</option>
<option value="shenzhen">深圳</option>
<option value="wuhan">武汉</option>
</select><br>
<input type="button" value="第一个城市" onclick="get(i.options[0])">
<input type="button" value="上一个城市" onclick="get(i.options[i.selectedIndex-1])">
<input type="button" value="下一个城市" onclick="get(i.options[i.selectedIndex+1])">
<input type="button" value="最后一个城市" onclick="get(i.options[i.options.length-1])">

 

var i=document.getElementById("city");

function  get(n){

alert(n.text);

}

DOM访问表格子元素的常用属性和方法:

caption

返回表格的标题对象

rows

返回该表格里的所有表格行(数组)

通过rows[index]返回表格指定的行所对应的属性:

cells

返回该表格行内所有的单元格组成的数组

通过cells[index]返回表格指定的列所对应的属性:

cellIndex

返回该单元格在表格行内的索引值

<table id="mytable" border="1">
<caption>甲骨文课程表</caption>
<tr>
<td>HTML</td>
<td>JavaScript</td>
</tr>
<tr>
<td>javaSE</td>
<td>Oracle</td>
</tr>
<tr>
<td>MySQL</td>
<td>Struts2</td>
</tr>
</table>
<input type="button" value="表格标题" onclick="get(i.caption)">
<input type="button" value="第一行、第一格" onclick="get(i.rows[0].cells[0])">
<input type="button" value="第二行、第二格" onclick="get(i.rows[1].cells[1])">
<input type="button" value="第三行、第二格" onclick="get(i.rows[2].cells[1])"><br>
设置指定单元格的值:第<input type="text" id="row" size="2">行,
第<input type="text" id="cell" size="2">列的值为
<input type="text" id="course" size="10">
<input type="button" id="btn_set" value="修改" onClick="updateCell()">

var i=document.getElementById("mytable");
function get(node){
alert(node.innerHTML);
}

function updateCell(){
//获取第一个文本跨的值
var i1=document.getElementById("row").value;
//第二个
var i2=document.getElementById("cell").value;
//第三个
var i3=document.getElementById("course").value;
i.rows[i1-1].cells[i2-1].innerHTML=i3;
}

DOM添加、删除节点的方法:

appendChild(newNode)

将newNode添加成当前节点的最后一个子节点

insertBefore(newNode,refNode)

refNode节点之前插入newNode节点

replaceChild(newNode,oldNode)

oldNode节点替换成newNode节点

removeChild(oldNode)

oldNode子节点删除

<ul id="city">
<li>北京</li>
<li>上海</li>
</ul>
<input type="button" value="创建插入替换节点" onClick="create()">
<input type="button" value="复制节点" onClick="copy()">
<input type="button" value="删除节点" onClick="del()">

var i=document.getElementById("city");//获取ul元素节点
function create(){
var j=document.createElement("li");//创建节点
j.innerHTML="淄博";
//i.appendChild(j);//将j添加到i上
//插入节点,获取最后一个节点
var last=i.getElementsByTagName("li");//获取ul下的所有li组成的数组
var la=last[last.length-1];//获取ul下最后一个元素节点
//i.insertBefore(j,la);//在最后一个元素节点前插入新节点

i.replaceChild(j,la);//替换节点
}
//复制节点
function copy(){
//浅复制,只复制元素节点
var li=i.getElementsByTagName("li");//获取ul下的li节点组成的数组
var zuihou=li[li.length-1];
// var lis=zuihou.cloneNode(false);
// i.appendChild(lis);
//深复制,元素节点以及文本内容
var l=zuihou.cloneNode(true);
i.appendChild(l);
}
function del(){
var j=i.getElementsByTagName("li");
var z=j[j.length-1];//获取最后一个子节点
i.removeChild(z);
}

DOM为下拉菜单(select)添加选项的方式:

new Option(text,value,defaultSelected,selected)

该构造器有4个参数,说明如下:

text

该选项的文本、即该选项所呈现的“内容”

value

选中该选项的值

defaultSelected

设置默认是否显示该选项

selected

设置该选项当前是否被选中

添加创建好的选项至列表框或下拉菜单的方式

直接为<select>的的指定选项赋值

列表框或下拉菜单对象.options[i]=创建好的option对象

删除列表框、下拉菜单的选项的方法

  1. 直接使用列表框或下拉菜单对象.remove(index)方法删除指定选项
  2. 直接将指定选项赋值为null

列表框或下拉菜单对象.remove(index)或对象.options[index]=null

<body id="test">
<input type="button" value="创建一个城市列表框" onclick="create()">
<input type="button" value="一条条删除列表框的内容" onclick="de()">
<input type="button" value="一次性清空列表框内容" onclick="clear1()">
</body>

//创建select元素节点
var select=document.createElement("select");
//设置select标签的id属性以及size属性
select.id="city";
select.size=3;
function create(){
//循环创建option元素
for(var i=0;i<10;i++){//创建option元素
var option=new Option("选项"+i,i);
//将创建好的option元素添加到ul中
select.options[i]=option;
}
//将select元素添加到body标签中
//获取body元素
var body=document.getElementsByTagName("body")[0];
body.appendChild(select);
}

function de(){
//删除select下的最后一个option
select.remove(select.options.length-1);
}
function clear1(){
//直接让option组成的数组的长度等于0
select.options.length=0;
}

posted @ 2020-06-02 16:33  wangmeihao  阅读(400)  评论(0编辑  收藏  举报