【发布时间】:2015-01-23 03:05:52
【问题描述】:
我有一个使用表单和一些 javascript 写入文本文件的 hta 文件。
表单的文本字段id为keyword_id,JS使用,目录为隐藏字段的值。
如何将 JS 更改为仅在用户单击提交时创建 TEST.txt?
代码还会在我每次点击提交时打开一个新的C: 窗口,这是怎么回事?
这是 html 表单和 javascript 代码:
HTML:
<div class="tab-content">
<div id="signup">
<h1>Type any keyword(s):</h1>
<form action="/" method="post">
<div class="top-row">
<div class="field-wrap">
<label>
<span class="req"></span>
</label>
<input type="text" required autocomplete="off" id="keyword_id" />
<input type="hidden" name="write" value="C:\Users\ME\Desktop\TEST.txt" id="write_id"/>
<button type="submit" onclick="Writedata()" class="myButton"/>Auto Search</button>
</div>
</div>
Javascript
<script language="javascript">
function Writedata() {
var fso = new ActiveXObject("Scripting.FileSystemObject");
var write_id;
write_id = document.getElementById('write_id').value ;
var s = fso.CreateTextFile(write_id, true);
s.WriteLine(document.getElementById('keyword_id').value);
s.Close();
}
</script>
【问题讨论】:
-
"... hta 文件在启动时创建文本文件..." 它没有,至少发布的代码中没有任何内容会在启动时调用
Writedata。您还必须在提交表单之前调用该函数,即向表单添加一个 onsubmit 处理程序。请显示更多代码,目前没有可点击的提交按钮。 -
对不起,你是对的。它不会在打开时创建文本文件,但是当用户输入任何文本并使用任一按钮提交时,它会在另一个窗口中打开 C: 文件夹。我该如何防止这种情况?您可以在此处查看整个 hta:testsite24.netai.net/public/mainmenu.hta 谢谢 Teemu!
标签: javascript html forms text-files hta