本文介绍如何使用JavaScript的onclick事件,通过单个按钮实现文本内容的编辑与保存状态切换。点击按钮时,将静态显示内容替换为可编辑的文本框,保存时再将内容写回并恢复按钮初始功能。
JS利用onclick事件实现单按钮编辑与保存切换
本文通过具体实例,详细讲解如何利用JavaScript中的onclick事件,实现单个按钮在“编辑”与“保存”两种状态下的功能切换。
该示例的核心逻辑是:用户点击同一个按钮,首次点击进入编辑模式,再次点击则执行保存操作并退出编辑模式。
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>test</title>
</head>
<body>
<span id="xs" >欢迎来到本站!本站提供专业的源码示例与素材下载!</span>
<textarea id="ei" style="display:none;width:300px;">欢迎来到本站!本站提供专业的源码示例与素材下载!</textarea>
<br/>
<input type="button" onclick="edit();" id="btt" name="btt" value="Edit" />
<script type="text/javascript" >
//Edit content
function edit(){
document.getElementById("xs").style.display="none";
document.getElementById("ei").style.display="";
var butt=document.getElementById("btt");
butt.value="Save";
butt.onclick=function(){
save();//第二次单击的时候执行这个函数
};
}
//Save content
function save(){
var cxs=document.getElementById('xs');
var ei=document.getElementById("ei");
var butt=document.getElementById("btt");
butt.value="Edit";
ei.style.display="none";
cxs.innerHTML=ei.value;
cxs.style.display="";
butt.onclick=function(){
edit();//还原第一次单击的时候执行的函数
};
}
</script>
</body>
</html>
具体运行效果如下图所示:

补充说明:关于JavaScript常用事件及其功能的详细说明,可以参考本站提供的在线工具资源:
JavaScript事件与功能说明大全: http://tools.jb51.net/table/javascript_event
如果您对JavaScript的其他方面感兴趣,还可以查阅本站专题系列,包括《JavaScript事件相关操作与技巧大全》、《JavaScript操作DOM技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》以及《JavaScript数学运算用法总结》。
希望本文提供的解决方案能对您的JavaScript编程实践有所帮助。