Запись содержимого формы в текстовый файл - PullRequest
0 голосов
/ 01 декабря 2010

Я написал код, в котором я хочу получить содержимое формы и записать его в текстовый файл. Код не записывается в текстовый файл. В чем проблема со следующим кодом?

<%@ 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>

1 Ответ

1 голос
/ 01 декабря 2010

Вы не можете писать в файлы, используя Javascript из-за проблем безопасности.Есть способы сделать это в Internet Explorer, используя элементы управления ActiveX, но, поскольку это не переносимо, я бы не рекомендовал это делать.Кроме того, существует HTML5-кэширование в автономном режиме, но это не то, что вам действительно нужно.

Короткая версия: вы не можете записать файл непосредственно на жесткий диск клиента.Либо напишите его на своем сервере, если вам нужно, либо предложите этот файл для загрузки клиенту.

И, как упоминал Koekiebox, в вашем коде есть только одна строка Java, и это

<%@ page import="java.io.*" %>

Все остальное - Javascript, и Javascript ничего не знает о java.io.*.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...