本地html文件 怎么用一段js脚本实现:网页文本框中输入文字,该html文件源码同时改变并自动保存?是本地html文件,实际就相当于用浏览器当文本编辑器,让它实时保存html文件修改后的内容。
下面就是一个简单的网页文件1.html的源代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<label for="textfield"></label>
<textarea name="textfield" cols="100" rows="50" id="textfield"></textarea>
</body>
</html>
我在文本框总输入一段文字如图。

在我输入后,1.html的源代码中这段就自动产生变化,并且自动保存。
<textarea name="textfield" cols="100" rows="50" id="textfield">我要的效果就是我在这个文本框输入文字,这里的文字就出现在本文件的源码中</textarea>
既然是本地的文件,换一换思路还是可以实现的,具体调用本机的ActiveX控件 -- Scripting.FileSystemObject 读写文本文件就可以了。但因为IE浏览器安全限制 不能使用这样的控件读写本地文件(会提示没有权限),所以须将html 改为hta(实质也是html),这样就绕过权限问题了。
例如:将你的1.html 改为1.hta
<html>
<body>
<textarea name="textfield" cols="100" rows="50" id="textfield"></textarea>
<script language="javascript">
var fso = new ActiveXObject("Scripting.FileSystemObject");
var path = fso.GetFile("1.hta");
//alert(fso.GetAbsolutePathName(path));获取当前文件路径
document.getElementById("textfield").value= document.documentElement.outerHTML
//获取当前页面的HTML
然后使用OpenAsTextStream方法写入文件1.hta
</script>
</body>
</html>
理论上应该是可以的,JS的FSO可以实现对文件的读写,服务器端或本地均可。
不过由于ASP的衰败,没多少人用VBS/JS 来做这些事情了