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 相关文章推荐
IE下写xml文件的两种方式(fso/saveAs)
Aug 05 Javascript
IE中JS跳转丢失referrer问题的2个解决方法
Jul 18 Javascript
node.js中的fs.writeFile方法使用说明
Dec 14 Javascript
利用Angularjs实现幻灯片效果
Sep 07 Javascript
动态加载css方法实现和深入解析
Jan 18 Javascript
原生js实现秒表计时器功能
Feb 16 Javascript
解决html input验证只能输入数字,不能输入其他的问题
Jul 21 Javascript
浅谈Vue2.0父子组件间事件派发机制
Jan 08 Javascript
jQuery实现文字超过1行、2行或规定的行数时自动加省略号的方法
Mar 28 jQuery
js中事件对象和事件委托的介绍
Jan 21 Javascript
Vue图片浏览组件v-viewer用法分析【支持旋转、缩放、翻转等操作】
Nov 04 Javascript
webpack+vue.js构建前端工程化的详细教程
May 10 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 数组入门教程小结
2009/05/20 PHP
通过PHP简单实例介绍文件上传
2015/12/16 PHP
php同时使用session和cookie来保存用户登录信息的实现代码
2016/05/13 PHP
php中static 静态变量和普通变量的区别
2016/12/01 PHP
thinkPHP中钩子的使用方法实例分析
2017/11/16 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
javascript 播放器 控制
2007/01/22 Javascript
点击按钮或链接不跳转只刷新页面的脚本整理
2013/10/22 Javascript
jQuery获得IE版本不准确webbrowser的解决方法
2014/02/23 Javascript
Jquery 实现弹出层插件
2015/01/28 Javascript
深入理解JavaScript系列(47):对象创建模式(上篇)
2015/03/04 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
JS模拟bootstrap下拉菜单效果实例
2016/06/17 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
js经验分享 JavaScript反调试技巧
2018/03/10 Javascript
对angularJs中ng-style动态改变样式的实例讲解
2018/09/30 Javascript
JS合并两个数组的3种方法详解
2019/10/24 Javascript
JS实现点击下拉列表文本框中出现对应的网址,点击跳转按钮实现跳转
2019/11/25 Javascript
vue实现编辑器键盘抬起时内容跟随光标距顶位置向上滚动效果
2020/05/28 Javascript
纯JS开发baguetteBox.js响应式画廊插件
2020/06/28 Javascript
arcgis.js控制地图地体的显示范围超出区域自动弹回(实现思路)
2021/01/28 Javascript
Python使用代理抓取网站图片(多线程)
2014/03/14 Python
Python实现多线程抓取网页功能实例详解
2017/06/08 Python
python实现简单神经网络算法
2018/03/10 Python
浅析Python语言自带的数据结构有哪些
2019/08/27 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
2019/10/24 Python
Python利用Scrapy框架爬取豆瓣电影示例
2020/01/17 Python
python模块内置属性概念及实例
2021/02/18 Python
CSS3过渡transition效果实例介绍
2016/05/03 HTML / CSS
元旦晚会上单位领导演讲稿
2014/01/05 职场文书
创意广告词
2014/03/17 职场文书
捐资助学感谢信
2015/01/21 职场文书
保安辞职信范文
2015/02/28 职场文书
党员转正党支部意见
2015/06/02 职场文书
导游词之台湾安平古堡
2019/12/25 职场文书
python 如何将两个实数矩阵合并为一个复数矩阵
2021/05/19 Python