我编写了一个代码,我想获取表单的内容并将其写入文本文件。代码不会写入文本文件。以下代码有什么问题?
<%@ page import="java.io.*" %>
<html>
<head>
<script type="text/javascript">
function mySave()
{
var fo=fopen("D:\\t.txt",3);
if(fo!=-1)
{
var q=document.getElementByName("qn").value;
var a=document.getElementByName("A").value;
var b=document.getElementByName("B").value;
var c=document.getElementByName("C").value;
var d=document.getElementByName("D").value;
fwrite(fo,q);
fclose(fo);
}
else
{
return false;
}
</script>
<body>
<form method="post" action="text.jsp" onSubmit="mySave()">
<center>
<table>
<tr><td>
Question :</td><td><input type="text" size="75" name="qn"/></td></tr><tr><td>
Option A :</td><td><input type="text" size="20" name="A"/></td></tr><tr><td>
Option B :</td><td><input type="text" size="20" name="B"/></td></tr><tr><td>
Option C :</td><td><input type="text" size="20" name="C"/></td></tr><tr><td>
Option D :</td><td><input type="text" size="20" name="D"/></td></tr><tr><td>
<input type="submit" value="Save" /></td></tr>
</table>
</center>
<form>
</body>
</html>
答案 0 :(得分:1)
出于安全考虑,您无法使用Javascript写入文件。有一些方法可以使用ActiveX控件在Internet Explorer中执行此操作,但由于这是不可移植的,我不建议使用它。然后是HTML5离线缓存,但它也不是你真正想要的。
简短版本:您无法将文件直接写入客户端的硬盘。如果需要,可以将其写在服务器上,或者将该文件作为下载文件提供给客户。
而且,正如Koekiebox所提到的,你的代码中只有一行Java,那就是
<%@ page import="java.io.*" %>
其余部分是Javascript,Javascript对java.io.*
一无所知。