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 相关文章推荐
js 验证身份证信息有效性
Mar 28 Javascript
js实现进度条的方法
Feb 13 Javascript
JS实现网页顶部向下滑出的全国城市切换导航效果
Aug 22 Javascript
JS实现的简洁二级导航菜单雏形效果
Oct 13 Javascript
jquery实现的回旋滚动效果完整实例【附demo源码下载】
Sep 20 Javascript
Bootstrap基本样式学习笔记之表单(3)
Dec 07 Javascript
JS常见简单正则表达式验证功能小结【手机,地址,企业税号,金额,身份证等】
Jan 22 Javascript
vue如何将v-for中的表格导出来
May 07 Javascript
javascript操作元素的常见方法小结
Nov 13 Javascript
js+css3实现炫酷时钟
Aug 18 Javascript
Vue前端判断数据对象是否为空的实例
Sep 02 Javascript
JS setTimeout与setInterval的区别
Apr 20 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
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
PHP实现的通过参数生成MYSQL语句类完整实例
2016/04/11 PHP
ThinkPHP5.1框架页面跳转及修改跳转页面模版示例
2019/05/06 PHP
初学JavaScript第二章
2008/09/30 Javascript
script标签的 charset 属性使用说明
2010/12/04 Javascript
js控制CSS样式属性语法对照表
2012/12/11 Javascript
关于jQuery参考实例 1.0 jQuery的哲学
2013/04/07 Javascript
关于query Javascript CSS Selector engine
2013/04/12 Javascript
JavaScript检测并限制复选框选中个数的方法
2015/08/12 Javascript
jquery实现倒计时功能
2015/12/28 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
webstorm添加vue.js支持的方法教程
2017/07/05 Javascript
用最少的JS代码写出贪吃蛇游戏
2018/01/12 Javascript
简单明了区分escape、encodeURI和encodeURIComponent
2018/05/26 Javascript
vue页面切换过渡transition效果
2018/10/08 Javascript
Vuex的基本概念、项目搭建以及入坑点
2018/11/04 Javascript
javascript设计模式 ? 单例模式原理与应用实例分析
2020/04/09 Javascript
Vue使用自定义指令实现拖拽行为实例分析
2020/06/06 Javascript
让Django支持Sql Server作后端数据库的方法
2018/05/29 Python
python删除字符串中指定字符的方法
2018/08/13 Python
Python实现堡垒机模式下远程命令执行操作示例
2019/05/09 Python
python中break、continue 、exit() 、pass终止循环的区别详解
2019/07/08 Python
Python 日期的转换及计算的具体使用详解
2020/01/16 Python
解决TensorFlow GPU版出现OOM错误的问题
2020/02/03 Python
Pytorch 解决自定义子Module .cuda() tensor失败的问题
2020/06/23 Python
opencv python 对指针仪表读数识别的两种方式
2021/01/14 Python
HTML5样式控制示例代码
2013/11/27 HTML / CSS
一套软件测试笔试题
2014/07/25 面试题
幼师自我鉴定范文
2013/10/01 职场文书
美发店5.1活动方案
2014/01/24 职场文书
翻译学院毕业生自荐书
2014/02/02 职场文书
本科毕业生专业自荐书范文
2014/02/05 职场文书
个人借款协议书范本
2014/11/17 职场文书
刘公岛导游词
2015/02/05 职场文书
党员读书活动心得体会
2016/01/14 职场文书