2011-03-18 14 views
11

He algo de código JavaScript cargada desde un archivo HTML local (sin pasar por un servidor web) .. es decir, abrir utilizando file://JavaScript local - escribir al archivo local

¿Hay alguna manera el código JavaScript en este archivo puede ser utilizado para escribir en un archivo local?

Sé que las restricciones entre sitios no permiten muchas cosas en JavaScript, pero esto no es entre sitios, por lo que debería permitirse en teoría.

+0

posible duplicado de [Archivo html-JavaScript auto modificante] (http://stackoverflow.com/questions/3854059/self-modifying-html-javascript-file) –

Respuesta

11

Hay un complemento jQuery jQuery.twFile que le permite leer y escribir en un archivo local.

+0

gracias! esto parece funcionar Déjame revisar y volver. – Jus12

+1

No funciona aquí (Firefox 24). ¿Algunas ideas? –

4

En caso de Internet   Explorer puede usar ActiveX.

<html> 
    <head> 
     <script type="text/javaScript"> 
      function WriteToFile() 
      { 
       var fso = new ActiveXObject("Scripting.FileSystemObject"); 
       var txtFile = fso.CreateTextFile("c:\\TestFile.txt", true); 
       txtFile.WriteLine("This is a test"); 
       txtFile.Close(); 
      } 
     </script> 
    </head> 

    <body> 
     <p> 
      <script type="text/javaScript"> WriteToFile(); </script> 
     </p> 
    </body> 
</html> 
+0

la idea de activeX es buena, pero también necesito que la página funcione en Firefox – Jus12

+1

Quizás una extensión de Firefox te sirva de algo. Mira esto https://developer.mozilla.org/es/Code_snippets/File_I%2F%2FO –

+0

ActiveX? ¿Entonces solo funciona en Windows? ¿Y las implicaciones de seguridad? –

0

No hay una API * nativa para el acceso al sistema de archivos en los navegadores. ¡Necesitas eso primero!

Por ejemplo, en Internet Explorer, hay un objeto ActiveX para ello:

var fso = new ActiveXObject("Scripting.FileSystemObject"); 

... pero requiere que el usuario relajar sus ajustes del navegador. En otros navegadores, es posible que pueda usar un archivo jar (Java Archive).

También puede ver lo que los contenedores de JavaScript sin navegador ofrecen, p. Los archivos HTA de Microsoft (aplicación HTML) admitirán el FileSystemObject de Windows ActiveX, siempre y cuando el software de comprobación de virus permita la ejecución de archivos HTA.

+0

* Las API ahora existen, pero todavía falta un buen soporte: http://caniuse.com/#feat=filesystem –

Cuestiones relacionadas