js中用tagname和id获取元素的3种方法
来源:互联网 发布:mac装win10好用吗 编辑:程序博客网 时间:2024/06/10 19:01
<!DOCTYPE html>
<html lang=
"en"
>
<head>
<meta charset=
"UTF-8"
>
<title>3种用tagname和id获取元素的方法</title>
<style>
body{
margin: 0;
}
ul{
margin: 0;
padding: 0;
list-style: none;
}
h1{
margin: 0;
}
</style>
</head>
<body>
<div
class
=
"box"
id=
"box"
>
<h1
class
=
"box-tit"
>分类名称</h1>
<ul
class
=
"box-list"
id=
"box-list"
>
<li
class
=
"box-listI"
>
<input
class
=
"box-listI-input"
>
<button>保存</button>
<button>取消</button>
</li>
<li
class
=
"box-listI"
>
<input
class
=
"box-listI-input"
>
<button>保存</button>
<button>取消</button>
</li>
<li
class
=
"box-listI"
>
<input
class
=
"box-listI-input"
>
<button>保存</button>
<button>取消</button>
</li>
</ul>
</div>
<script>
//[1]整体法,先获取所有的元素,再通过ai+-b的方法来算出需要的元素
var
oList = document.getElementById(
'box-list'
);
var
aInput = oList.getElementsByTagName(
'input'
);
var
aBtn =oList.getElementsByTagName(
'button'
);
for
(
var
i = 0; i < aBtn.length; i++){
aBtn[i].index = i;
}
for
(
var
i = 0; i < aInput.length; i++){
//确定按钮
aBtn[2*i].onclick = function(){
aInput[
this
.index/2].disabled =
true
;
}
//取消按钮
aBtn[2*i+1].onclick = function(){
aInput[(
this
.index-1)/2].disabled =
false
;
aInput[(
this
.index-1)/2].value =
''
;
console.log(1);
}
}
//[2]数组法,在全局环境下建立空数组,遇到需要循环的结构时,在循环中获取元素,并放入数组
var
oList = document.getElementById(
'box-list'
);
var
aIn = oList.getElementsByTagName(
'li'
);
var
aInput = [];
var
aBtnY = [];
var
aBtnX = [];
for
(
var
i = 0; i < aIn.length; i++){
aInput[i] = aIn[i].getElementsByTagName(
'input'
)[0];
aBtnY[i] = aIn[i].getElementsByTagName(
'button'
)[0];
aBtnX[i] = aIn[i].getElementsByTagName(
'button'
)[1];
aBtnY[i].index = aBtnX[i].index = i;
//确定按钮
aBtnY[i].onclick = function(){
aInput[
this
.index].disabled =
true
;
}
//取消按钮
aBtnX[i].onclick = function(){
aInput[
this
.index].disabled =
false
;
aInput[
this
.index].value =
''
;
console.log(2);
}
}
//[3]函数法,遇到相同的几组元素时,只操作一组元素,并用函数传参来实现所有的效果
var
oList = document.getElementById(
'box-list'
);
var
aIn = oList.getElementsByTagName(
'li'
);
function fn(i){
var
oInput = aIn[i].getElementsByTagName(
'input'
)[0];
var
oBtnY = aIn[i].getElementsByTagName(
'button'
)[0];
var
oBtnX = aIn[i].getElementsByTagName(
'button'
)[1];
//确定按钮
oBtnY.onclick = function(){
oInput.disabled =
true
;
}
//取消按钮
oBtnX.onclick = function(){
oInput.disabled =
false
;
oInput.value =
''
;
console.log(3);
}
}
for
(
var
i = 0; i < aIn.length; i++){
fn(i);
}
</script>
</body>
</html>
阅读全文
0 0
- js中用tagname和id获取元素的3种方法
- JS原生通过id,class,tagname 来获取元素的方法
- 原生js获取 id name tagName的封装
- js中获取指定ID元素方法和指定类型元素的方法
- js获取鼠标所在html元素的id和属性
- js和jquery获取元素的方法
- 元素JS和jquery如何获取点击元素的id或name属性
- js获取元素的方法
- JS获取元素的方法
- NO.4.JS中一获取tagname的错误
- 学习笔记之php页面中js获取标签元素的ID值方法
- 从 jQuery 获取元素名(tagName)
- 从 jQuery 获取元素名(tagName)
- js和jquery获取父级元素、子级元素、兄弟元素的方法
- js和jquery获取父级元素、子级元素、兄弟元素的方法
- js和jquery获取父级元素、子级元素、兄弟元素的方法
- js和jquery获取父级元素、子级元素、兄弟元素的方法
- js和jquery获取父级元素、子级元素、兄弟元素的方法
- 浏览器的工作原理
- 关于加密的一些东西
- JYUOA项目介绍——适合刚学完SSH的朋友
- 跟我一起写 Makefile(十二)
- 计算机体系结构介绍
- js中用tagname和id获取元素的3种方法
- Unity中Json创建,解析
- Linux上部署多个tomcat
- 跟我一起写 Makefile(十三)
- 前端学PHP之日期与时间
- Anroid 常用控件(三)
- IBM Bluemix
- jsp页面时间格式显示不正确
- jdk8下载、安装、环境变量配置