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 CheckBox(复选框)操作方法汇总
Apr 15 Javascript
HTML5实现留言和回复页面样式
Jul 22 Javascript
JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
Nov 24 Javascript
基于jQuery实现网页打印功能
Dec 01 Javascript
Bootstrap carousel轮转图的使用实例详解
May 17 Javascript
javascript入门之数组[新手必看]
Nov 21 Javascript
javascript添加前置0(补零)的几种方法
Jan 05 Javascript
Ajax异步获取html数据中包含js方法无效的解决方法
Feb 20 Javascript
详解vue与后端数据交互(ajax):vue-resource
Mar 16 Javascript
使用JavaScript实现一个小程序之99乘法表
Sep 21 Javascript
vue+elementUI 复杂表单的验证、数据提交方案问题
Jun 24 Javascript
继承行为在 ES5 与 ES6 中的区别详解
Dec 24 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 adodb连接不同数据库
2009/03/19 PHP
使用ThinkPHP+Uploadify实现图片上传功能
2014/06/26 PHP
thinkPHP5实现数据库添加内容的方法
2017/10/25 PHP
PHP实现倒计时功能
2020/11/16 PHP
javascript cookies 设置、读取、删除实例代码
2010/04/12 Javascript
通过判断JavaScript的版本实现执行不同的代码
2010/05/11 Javascript
利用jquery包将字符串生成二维码图片
2013/09/12 Javascript
js读取并解析JSON类型数据的方法
2015/11/14 Javascript
JavaScript跨域调用基于JSON的RESTful API
2016/07/09 Javascript
Node.js获取前端ajax提交的request信息
2017/02/20 Javascript
JavaScript禁止微信浏览器下拉回弹效果
2017/05/16 Javascript
node.js express中app.param的用法详解
2017/07/16 Javascript
基于Bootstrap框架菜鸟入门教程(推荐)
2017/09/17 Javascript
vue 添加vux的代码讲解
2017/11/30 Javascript
基于Node.js实现压缩和解压缩的方法
2018/02/13 Javascript
vue中Element-ui 输入银行账号每四位加一个空格的实现代码
2018/09/14 Javascript
微信小程序冒泡事件及其阻止方法实例分析
2018/12/06 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
python中多层嵌套列表的拆分方法
2018/07/02 Python
python实现点对点聊天程序
2018/07/28 Python
对python使用telnet实现弱密码登录的方法详解
2019/01/26 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
2019/05/27 Python
django foreignkey外键使用的例子 相当于left join
2019/08/06 Python
python TK库简单应用(实时显示子进程输出)
2019/10/29 Python
python实现快递价格查询系统
2020/03/03 Python
Sentry错误日志监控使用方法解析
2020/11/12 Python
python3爬虫GIL修改多线程实例讲解
2020/11/24 Python
弄清Pytorch显存的分配机制
2020/12/10 Python
玩具反斗城美国官网:Toys"R"Us
2016/09/17 全球购物
加拿大著名的奢侈品购物网站:SSENSE(支持中文)
2020/06/25 全球购物
校庆活动方案
2014/03/31 职场文书
领导班子四风问题个人对照检查材料
2014/10/04 职场文书
2015年质检工作总结
2015/05/04 职场文书
Vue3.0写自定义指令的简单步骤记录
2021/06/27 Vue.js
MySQL中JOIN连接的基本用法实例
2022/06/05 MySQL