Javascript获取html元素的几种方法
1.通过id获取html元素
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<div id="mydiv" style="border:1px solid red">我是div,我的id是mydiv</div>
<script>
var x=document.getElementById("mydiv").innerHTML;
document.write(x+"(我是通过javascript获取的)");
</script>
</body>
</html>
2.通过class来获取html元素
1)一个类名的情况
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<p style="border:1px solid red" class="aaa">我是p,我的类名是aaa</p>
<span style="border:1px solid red" class="aaa">我是span,我的类名是aaa</span>
<script>
function getByClass(iclass){ //封装函数
var Result=[];//存放结果的数组
var allElement=document.getElementsByTagName("*"); //得到所有元素
// 遍历所有元素,如果和给定的参数匹配,则这个元素被放进Result数组中
for(var i=0;i<allElement.length;i++){
if(allElement[i].className==iclass){
Result.push(allElement[i]);
}
}
return Result; //返回最后结果数组
}
// 通过以下方法来调用
window.onload=function(){
var arr= getByClass("aaa");
// 循环输出显示元素
for(var i=0;i<arr.length;i++){
document.write(arr[i].innerHTML+"(我是javascript获得的)<br>");
}
}
</script>
</body>
</html>
2)两个类名的情况(例如class="aaa bb")
①正则表达式的方法
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<p style="border:1px solid red" class="aaa bb c">我是p,我的类名是aaa bb c</p>
<span style="border:1px solid red" class="bb c">我是span,我的类名是c</span>
<script>
function getByClass(iclass){ //封装函数
var Result=[];//存放结果的数组
var allElement=document.getElementsByTagName("*"); //得到所有元素
// 遍历所有元素,如果和给定的参数匹配,则这个元素被放进Result数组中
// 正则模式
var re=new RegExp("\\b"+iclass+"\\b","g");
for(var i=0;i<allElement.length;i++){
// 字符串search方法判断是否存在匹配
if(allElement[i].className.search(re)!=-1){
Result.push(allElement[i]);
}
}
return Result; //返回最后结果数组
}
// 通过以下方法来调用
window.onload=function(){
var arr= getByClass("bb");
// 循环输出显示元素
for(var i=0;i<arr.length;i++){
document.write(arr[i].innerHTML+"(我是javascript获得的)<br>");
}
}
</script>
</body>
</html>
②类名获取--数组方式
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<p style="border:1px solid red" class="aaa bb c">我是p,我的类名是aaa bb c</p>
<span style="border:1px solid red" class="bb c">我是span,我的类名是bb c</span>
<script>
function getByClass(iclass){ //封装函数
var Result=[];//存放结果的数组
var allElement=document.getElementsByTagName("*"); //得到所有元素
// 遍历所有元素,将元素类名分割为字符串数组,再遍历字符串数组元素,如果与所给参数匹配,则这个元素被放进Result数组中
for(var i=0;i<allElement.length;i++){
var arr=allElement[i].className.split(/\s+/); //字符串分割为数组
for(var j=0;j<arr.length;j++){
if(arr[j]==iclass){
Result.push(allElement[i]);
}
}
}
return Result; //返回最后结果数组
}
// 通过以下方法来调用
window.onload=function(){
var arr= getByClass("bb");
// 循环输出显示元素
for(var i=0;i<arr.length;i++){
document.write(arr[i].innerHTML+"(我是javascript获得的)<br>");
}
}
</script>
</body>
</html>
3.通过标签来获得html元素
Javascript获取html元素的几种方法的更多相关文章
- javascript 获取html元素的三种方法
操作HTML元素 你首先找到该元素. 三种方法来做这件事: 通过id找到HTML元素 通过标签名找到HTML元素 通过类名找到HTML元素 通过id查找HTML元素 在DOM中查找HTML元素的最简单 ...
- JS获取DOM元素的八种方法
JS获取DOM元素的方法(8种) 通过ID获取(getElementById) 通过name属性(getElementsByName) 通过标签名(getElementsByTagName) 通过类名 ...
- JavaScript获取样式值的几种方法学习总结
本人经过整理总结出以下获取样式值的方法,如有错误请各位大佬指正. 有四种方法:style,currentStyle,getComputedStyle,rules 与 cssRules方法. 1. st ...
- Javascript获取value值的三种方法及注意点
JavaScript获取value值,主要有以下三种: 1.用document.getElementById(“id名”).value来获取(例1): 2.通过form表单中的id名或者name名来获 ...
- jQuery -> 获取后代元素的三种方法
假设我们有内容例如以下的html文件,那么怎样选取包括在<p>元素内的<i>元素呢? 邪馬台国の謎と弥生時代 紀元前1000年ごろ.水稲工作の技術をもつ集団が大挙して日本に移住 ...
- JavaScript获取鼠标位置的三种方法
在一些DOM操作中我们经常会跟元素的位置打交道,鼠标交互式一个经常用到的方面,令人失望的是不同的游览器下会有不同的结果甚至是有的游览器下没结果,这篇文章就鼠标点击位置坐标获取做一些简单的总结. 获取鼠 ...
- Jquery取得iframe中元素的几种方法Javascript Jquery获取Iframe的元素、内容或者ID
query取得iframe中元素的几种方法 在iframe子页面获取父页面元素代码如下: $('#objId', parent.document);// 搞定... 在父页面 获取iframe子页面的 ...
- JS获取HTML DOM元素的8种方法
什么是HTML DOM 文档对象模型(Document Object Model),是W3C组织推荐的处理可扩展置标语言的标准编程接口.简单理解就是HTML DOM 是关于如何获取.修改.添加或删除 ...
- javascript 获取iframe元素的方法
javascript 获取iframe元素的方法 第一种: $("#IframeID").contents().find("div"); 第二种: $(win ...
随机推荐
- MST-kruskal ElogE+V
hdu 1233 #include<stdio.h> #include<algorithm> using namespace std; struct dis { int a, ...
- Istio 1.4 部署指南
原文链接:Istio 1.4 部署指南 Istio 一直处于快速迭代更新的过程中,它的部署方法也在不断更新,之前我在 1.0 版本中介绍的安装方法,对于最新的 1.4 版本已经不适用了.以后主流的部署 ...
- 乱花渐入迷人眼------从解决jqueryEasyUI上传插件提交ajax请求谈网页调试
由于要给格斗男神写搏击俱乐部ERP系统,就要用到jquery Easyui插件规范数据和表单的录入,其中一项功能就是上传商品图片, 而且是在datagrid-detailview中使用filebox完 ...
- hiho #1043 : 完全背包
01背包和完全背包解析 在上一节的01背包中,每种物品只能使用一次. 初始化j=V,逆序推能够保证 dp[v-c[i]] 保存的是状态是 dp[i-1][v-c[i]] ,也就是每个物品只被使用了一次 ...
- sizeof运算符、字节对齐考点(面宝P50)
记住几句话: 结构体的长度一定是最长的数据元素类型的整数倍: 某数据元素的起始地址能被该类型所占的字节数整除: 静态变量是存放在全局数据区,而sizeof计算栈中分配的大小,不包括static变量: ...
- 【winfrom-右击快捷菜单】右击或左击时显示快捷菜单
拖个contextMenuStrip控件 按钮的MouseDown事件: private void treeView1_MouseDown(object sender, MouseEventArgs ...
- Activiti使用
Activiti是一个开源的工作流引擎,它实现了BPMN 2.0规范,可以发布设计好的流程定义,并通过api进行流程调度. Activiti 作为一个遵从 Apache 许可的工作流和业务流程管理开源 ...
- 29.连续子数组的最大和(python)
题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学.今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决.但是,如果向量 ...
- luogu P1362 兔子数 x
P1362 兔子数 题目描述 设 S(N ) 表示 N 的各位数字之和,如 S(484) = 4+8+4 = 16, S(22) = 2+2 = 4.如果一个正整数满足 S(x*x) = S(x) * ...
- 小程序开发获取token值
// 登录 wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId // console.lo ...