如何在提交值时仅创建此hta创建文本文件

时间:2015-01-23 03:05:53

标签: javascript html forms text-files hta

我有一个使用表单和一些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>

1 个答案:

答案 0 :(得分:1)

您已<form action="/" method="post">,已打开的C文件夹是对表单提交的回复。

您很可能实际上不需要提交表单,因此您可以省略form标记中的属性,并通过将按钮类型更改为"button"来阻止提交。这样做也可以阻止button type="submit"的默认操作:

function Writedata () {
          :
    window.event.returnValue = false;
    window.event.cancelBubble = true;
}