原生js修改文本内容

关于修改文本的内容,有好多不同的写法,今天实现一个简单的的案例就是点击“编辑”按钮,文本内容可以保存。看下图:

这个例子想要实现的效果就是点击编辑,出现文本框,然后可以更改内容,关键就是在实际项目中可能会遇到有多行这样的内容,那么现在就只能用到传参来解决了,只要实现一个剩下的就都好说了,来看看代码:

<ul id="list">
       <li>
           <strong></strong>
           <input type="text" value="">
           <i>编辑</i>
           <span>保存</span>
       </li>
       <li>
           <strong></strong>
           <input type="text" value="">
           <i>编辑</i>
           <span>保存</span>
       </li>
       <li>
           <strong></strong>
           <input type="text" value="">
           <i>编辑</i>
           <span>保存</span>
       </li>
       <li>
           <strong></strong>
           <input type="text" value="">
           <i>编辑</i>
           <span>保存</span>
       </li>
       <li>
           <strong></strong>
           <input type="text" value="">
           <i>编辑</i>
           <span>保存</span>
       </li>
   </ul>

布局很简单,接下来看js实现:

<script>
    window.onload=function(){
        var oUl=document.getElementById("list");
        var aLi=oUl.getElementsByTagName("li");
        for(var i=0;i<aLi.length;i++){
            fn(aLi[i]);
        }
        //先完成其中一个li的效果
        function fn(aLi){//传参来实现每个li的效果
            var oStxt=aLi.getElementsByTagName("strong")[0];
            var oInput=aLi.getElementsByTagName("input")[0];
            var oBj=aLi.getElementsByTagName("i")[0];
            var oBc=aLi.getElementsByTagName("span")[0];
            //初始化的情况下,所展示的内容
            oInput.style="display:none";
            oStxt.innerHTML="可以更改我的内容";

            oBj.onclick=function(){//点击编辑按钮
                oStxt.style="display:none";
                oInput.value=oStxt.innerHTML;//将input的值赋值到strong里
                oInput.style="display:block";
            };
            oBc.onclick=function(){//点击保存按钮
                oStxt.style="display:block";
                oInput.style="display:none";
                oStxt.innerHTML=oInput.value;
            }
        }
    }

</script>

这是效果图,可以更改input里的内容(可以忽略样式)

好了,今天就实现一个小的例子来联系传参,希望对大家有用!

时间: 2024-08-27 17:16:12

原生js修改文本内容的相关文章

原生JS的使用,包括jquery和原生JS获取节点、jquery和原生JS修改属性的比较

一.前言 相比于JS这条直达终点.满是荆棘的小路,jquery无疑是康庄大道了,足够的简洁.易用给了它辉煌的地位.然而,毕竟是绕着道的插件,当小路走着走着变成大路的时候,曾经的大路也就失去了他自身的优势了. 原生JS虽然没有jquery那么的好用.便捷,或者说没有jquery那样让我们使用的如此顺手,甚至是无法舍弃的依赖.可是我们依然不得不扔掉手中这根陪伴我们多年的拐杖,我们不是瘸子,我们不曾腐朽,我们还可以独立前行. 二.正文 1. jquery和原生JS获取节点的比较 //这是HTML代码,

WPF Paragraph获取或修改文本内容

一.说明 Paragraph继承自Block,Block继承自TextElement,在TextElement中 // // 摘要: // 获取表示元素中内容末尾的 System.Windows.Documents.TextPointer. // // 返回结果: // 表示 System.Windows.Documents.TextElement 中内容末尾的 System.Windows.Documents.TextPointer. public TextPointer ContentEnd

python ssh 连接远程服务器,修改文本内容,调用脚本

今天小编get到一个用python的paramiko库创建ssh对象,连接到远程服务器,并且修改文件内容,调用脚本的好方法!! 主角当然是paramiko库啦,利用paramiko创建一个ssh对象,用于连接远程服务器 import paramiko ssh = paramiko.SSHClient()#创建SSH对象 设置允许连接不在know_hosts的主机,ssh会将 访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts,当下次访问相同计算机时,OpenS

Python修改文本内容

将第一行内容改为第二行的内容格式 REPLACE INTO `LogCenterDbName` VALUES (29, 1, 'lt4_his'); REPLACE INTO `LogCenterDbName` VALUES (29, 1, 'loghis_pool1','pjbhislt4'); 原文件 cat file.txt REPLACE INTO `LogCenterDbName` VALUES (14, 0, 'dx1_log'); REPLACE INTO `LogCenterDb

原生JS修改标签样式为带阴影效果

代码如下: JS部分 //点击时候,改变样式 function GetCategoryInfo(value) { var getInfo = value.toString().split(','); var infoHtml = "<b>档案类别:</b><br /><span>" + getInfo[0] + "</span><br /><b>著入方式:</b><br /&

js修改编辑器内容、修改iframe子页内容

$('#question-stem-uploader').on('click','',function(){ //获取编辑器内容(ke-edit-iframe: 编辑器iframe的classm名称)(ke-content:iframe里面包含内容的div的class名称) var html = $(".ke-edit-iframe").contents().find(".ke-content").html(); $(".ke-edit-iframe&qu

使用原生JS 修改 DIV 属性

本例参考并改进自:https://www.jianshu.com/p/2961d9c317a3 大家可以一起学习!! <!DOCTYPE html> <html lang="CH-ZN"> <head> <meta charset="utf-8"> <title>按键修改DIV属性</title> <style type="text/css"> * { margi

0510日重点:原生js修改豆瓣电影api 在angularjs里运用出现的bug

用$http.jsonp调用豆瓣电影api,会出现返回数据格式错误的bug.在控制器里加上下面的代码,才能正常获取到数据. function jsonp(url, callback) {        var script = document.createElement('script');        script.type = "text/javascript";        script.src = url + (url.indexOf('?') > 0 ? '&am

js替换文本内容。实例

<script language="javascript"> var r= "1\n2\n3\n"; //将字母\n替换成分号 alert(r.replace("\n",";")); 结果:1;2\n3\n 只替换了第一个 </script> <script language="javascript"> var r= "1\n2\n3\n"; //将字