我需要从我的某个博客页面捕获搜索主题,并将其写入文本文件以进行跟进。我已经能够捕获输入字符串,但是,我无法将其写入文本文件。我已阅读并尝试实施我找到的所有解决方案但没有成功。我提供了一个非常简单的代码示例来将文本写入文件,但我无法使其工作。 Onblur事件可以很好地访问myFunction,所以这不是问题。我疯了,因为其他人展示的样本非常简单。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" >
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>fs=Server CreateObject ("Scripting FileSystemObject")</title>
<script type="text/javascript">
function myFunction()
{
var fs = ActiveXObject("Scripting.FileSystemObject");
var f = fs.OpenTextFile("d:\\test\\topics.txt", 8, true);
f.WriteLine("This text will be added to the end of file");
f.Close();
}
</script>
</head>
<body>
<input name="Text1" type="text" size="55" onblur="myFunction()" />
</body>
</html>
答案 0 :(得分:1)
如果您使用支持data-uri的现代浏览器,您可以使用javascript创建内容并通过base64强制下载并使其与data-uri兼容,然后只需将窗口位置指向它即可。
This answer demonstrates an HTML-only way to do it.
您也可以使用闪光助手来处理这个问题。 For instance, Downloadify does this.
答案 1 :(得分:1)
JavaScript cannot从客户端读取/写入文件或将文件写入服务器(直接)。
如果要将文件写入服务器,请考虑使用将与您的javascript交互的服务器端脚本 - 以及example如何使用一点点PHP进行此操作。
就客户端文件交互而言,出于安全原因,这根本不可能(除非将其上载到脚本中,在这种情况下可以读取它)。
然而,您可以在客户端上存储数据 - 我以前一直使用jStorage并强烈推荐它。它适用于跨浏览器(即使在IE 6上),并且非常易于使用。
答案 2 :(得分:0)
感谢各位成员提供的所有建议,我能够在服务器上执行写入和附加到文本文件。我使用html代码获取写入所需的数据,然后调用.php文件来写入文件。这是客户端与服务器端问题,.php使用fopen,fwrite和fclose解决了它。
答案 3 :(得分:0)
从技术上讲,当在(.hta)文件中使用javascript时,您可以使用ActiveXObject Scripting.FileSystemObject
来访问文件系统,使用它可以执行您拥有权限的文件系统所需的所有命令要做。
var fso=new ActiveXObject("Scripting.FileSystemObject");
if(fso.FolderExists("C:\\Users\\")){
alert("It exists, hello friend!");
}eles{
alert("Doesn't exist, who are you?");
}