javascript中获取元素标签中间的内容的实现方法


Posted in Javascript onOctober 08, 2016

使用ajax,通过会把服务器端响应获取到reponseText或者reponseXML中的信息,以某种方法动态的写到div和span标记中,这样,可以在无刷新的情况下,改变页面内容的显示。

通过javascript进行动态的修改,修改的方法有两种:

1. 一种是使用html的每个标记的innerHTML属性,使用此属性,只要为它提供一个有意义的html代码片段,那么html解释器就可以将其中的内容进行解释,并显示在页面上,使用这种方式比较简单,每次修改前不需要先把原来的内容清除掉,而可以直接进行填充,填充的同时会把原来的内容覆盖掉。这种方式虽然简单,但是目前还不是w3c的标准,不过主流的浏览器如IE,firefox都已经采用。

2. 另外一种是创建一个Text Node节点作为div和span元素的子节点,采用这种方式,div和span中要显示的内容保存在Text Node中,这样div和span元素显示的内容是由Text Node提供的。需要注意的是:在每次填写内容时,需要先把原来的Text Node删除掉,然后新建一个Text Node再写入内容。如果不删除的话,那么每次调用填充操作时,都会新建一个新的Text Node,也就造成div和span元素下有多个Text Node节点,并且每个Text Node都会把自身的内容显示出来,因此不会覆盖原来的内容。

<html>
<head>
<style>
.css1{background-color:ff0000;color:ff9966;border:1;cursor:hand;}
.css2{background-color:00ff00;color:ffffff;border:1;cursor:hand;}
</style>

<script type="text/javascript">
function changeneirong()
{
  var spanv = document.getElementsByTagName("span");
  spanv[2].innerHTML = "我由常军魁变为了span";
}
function changediv()
{
  document.getElementsByTagName("div")[0].innerHTML = "我由常军魁变成了div";
}
function changep()
{
  document.getElementsByTagName("p")[0].innerHTML = "我由常军魁变成了p标签";
}

function change()
{
var spanvar = document.getElementsByTagName("span");
alert(spanvar[0].innerHTML);
document.getElementsByTagName("span")[0].className = "css2";
}
 
 function fillDivWithInnerHTML() {
    var username = document.getElementById("username").value;
    var textDiv = document.getElementById("textDiv");
    textDiv.innerHTML=username;
  }
 
  function fillDivWithTextNode() {
    var textDiv = document.getElementById("textDiv");
    //首先删除所有已新建的Text Node节点
    while(textDiv.hasChildNodes()) {
      textDiv.removeChild(textDiv.childNodes[0]);
    }
    var textNode = document.createTextNode(document.getElementById("username").value);
    textDiv.appendChild(textNode);
  }
 
  function fillSpanWithInnerHTML() {
    var username = document.getElementById("username").value;
    var textSpan = document.getElementById("textSpan");
    textSpan.innerHTML=username;
  }
 
  function fillSpanWithTextNode() {
 
    var textSpan = document.getElementById("textSpan");
 
    //首先删除所有已新建的Text Node节点
 
    while(textSpan.hasChildNodes()) {
      textSpan.removeChild(textSpan.childNodes[0]);
    }
    var textNode = document.createTextNode(document.getElementById("username").value);
    textSpan.appendChild(textNode);
 
  }
 
</script>
</head>
<body>
<span class="css1" onclick="change()">常军魁</span>
<span class="css1" onclick="javascript:this.className='css2'">这是一段文字
</span>
<br />
<span onclick="changeneirong()" style="corsur:hand;">常军魁</span>
<br />
<div onclick="changediv()">常军魁</div>
<p onclick="changep()">常军魁</p>
 
 
 
<input type="text" id="username" name="username"/><br/>
<input type="button" id="fillDivWithInnerHTML" value="fillDivWithInnerHTML" onclick="fillDivWithInnerHTML()"/>
 
<br/>
 
<input type="button" id="fillDivWithTextNode" value="fillDivWithTextNode" onclick="fillDivWithTextNode()"/>
 
<br/>
 
<input type="button" id="fillSpanWithInnerHTML" value="fillSpanWithInnerHTML" onclick="fillSpanWithInnerHTML()"/>
<br/>
 
<input type="button" id="fillSpanWithTextNode" value="fillSpanWithTextNode" onclick="fillSpanWithTextNode()"/>
 
<span id="textSpan"></span><br/>
 
<div id="textDiv"></div>
</body>
</html>

以上就是小编为大家带来的javascript中获取元素标签中间的内容的实现方法全部内容了,希望大家多多支持三水点靠木~

Javascript 相关文章推荐
jquery仿QQ商城带左右按钮控制焦点图片切换滚动效果
Jun 27 Javascript
js下拉框二级关联菜单效果代码具体实现
Aug 03 Javascript
javascript中的遍历for in 以及with的用法
Dec 22 Javascript
详解Javascript事件驱动编程
Jan 03 Javascript
轻松实现js图片预览功能
Jan 18 Javascript
JavaScript中获取时间的函数集
Aug 16 Javascript
jQuery将表单序列化成一个Object对象的实例
Nov 29 Javascript
PHP获取当前页面完整URL的方法
Dec 02 Javascript
JavaScript Uploadify文件上传实例
Feb 28 Javascript
js中的闭包学习心得
Feb 06 Javascript
vue webpack开发访问后台接口全局配置的方法
Sep 18 Javascript
Vue+Koa2 打包后进行线上部署的教程详解
Jul 31 Javascript
Jquery和Js获得元素标签名称的方法总结
Oct 08 #Javascript
JS获取html元素的标记名实现方法
Oct 08 #Javascript
js获取元素的标签名实现方法
Oct 08 #Javascript
什么是JavaScript中的结果值?
Oct 08 #Javascript
如何利用模板将HTML从JavaScript中抽离
Oct 08 #Javascript
Vue.js 2.0 和 React、Augular等其他前端框架大比拼
Oct 08 #Javascript
bootstrap下拉列表与输入框组结合的样式调整
Oct 08 #Javascript
You might like
PHP 魔术函数使用说明
2010/05/14 PHP
PHP 中 Orientation 属性判断上传图片是否需要旋转
2015/10/16 PHP
Ajax和PHP正则表达式验证表单及验证码
2016/09/24 PHP
基于Laravel实现的用户动态模块开发
2017/09/21 PHP
JavaScript的parseInt 进制问题
2009/05/07 Javascript
js 与或运算符 || &amp;&amp; 妙用
2009/12/09 Javascript
Jquery 插件学习实例1 插件制作说明与tableUI优化
2010/04/02 Javascript
探讨jQuery的ajax使用场景(c#)
2013/12/03 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
js实现有时间限制消失的图片方法
2015/02/27 Javascript
jQuery实现图片左右滚动特效
2020/04/20 Javascript
AngularJS使用带属性值的ng-app指令实现自定义模块自动加载的方法
2017/01/04 Javascript
解决vue项目中type=”file“ change事件只执行一次的问题
2018/05/16 Javascript
JS加密插件CryptoJS实现的Base64加密示例
2020/08/16 Javascript
详解如何探测小程序返回到webview页面
2019/05/14 Javascript
JavaScript中条件语句的优化技巧总结
2020/12/04 Javascript
python处理cookie详解
2014/02/07 Python
Redis使用watch完成秒杀抢购功能的代码
2018/05/07 Python
python实现排序算法解析
2018/09/08 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
Python中字符串与编码示例代码
2019/05/20 Python
python如何给字典的键对应的值为字典项的字典赋值
2019/07/05 Python
django admin.py 外键,反向查询的实例
2019/07/26 Python
Python 类的私有属性和私有方法实例分析
2019/09/29 Python
redis数据库及与python交互用法简单示例
2019/11/01 Python
如何查看python关键字
2021/01/17 Python
amazeui 验证按钮扩展的实现
2020/08/21 HTML / CSS
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
Overload和Override的区别
2012/09/02 面试题
shell的种类有哪些
2015/04/15 面试题
医院实习接收函
2014/01/12 职场文书
中国梦团日活动总结
2014/07/07 职场文书
2014年银行工作总结范文
2014/11/12 职场文书
幼儿园小班教育随笔
2015/08/14 职场文书
springboot用户数据修改的详细实现
2022/04/06 Java/Android