На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: ALXR
  
    > JavaCript. Запись в файл
      Есть кнопка. При наведении курсора выскакивает alert. Как сделать, чтобы текст alert'а записывался в файл?
        Никак.
          А чтоб при наведении на кнопку записывался любой текст в файл можно?
            нельзя.
              Можно использую VBScript попытаться записать инфу в файл на локальной машине, но юзер скорее всего будет несогласен. ж)  ;D
                Не, скорре всего будет согласен (если у него настройки IE дефолтные) :)
                  Да? Ну пофиг, признаться, всеравно глупо такой фигней страдать, имху.
                    Это да..
                      Мне вот тута с рассылкой прислали ::)
                      имхо кому-нибудь может пригадится по крайней мере для общего арзвития
                      ExpandedWrap disabled
                        <br>////////////////////////////////////////////////////////////////////<br>//                                                                             //<br>//           Поиск и замена текста в файлах                     //<br>//          Автор: Scripter (www.script-info.net)                 //<br>//                                                                              //<br>/////////////////////////////////////////////////////////////////////<br><br>var Новая_строка = "\r\n";<br>var Поиск_и_Замену = 0;<br>var Добавление_в_Начало = 1;<br>var Добавление_в_Конец = 2;<br><br>// Настройка утилиты<br>// =================<br>var Тип_Файлов="HTML"; // Вариант - "Файл 'PHP'" и т.д.<br>var Выполнить = Поиск_и_Замену; // Добавление_в_Начало | Добавление_в_Конец<br>var Каталог="c:\\web\\html";<br>var Шаблон_Поиска = /http:\/\/www\.script-info\.net\/\?rd=dhtml&rf=html\/htmltags\.php?=/ig ;<br>// Если выбран режим "Добавление_в_..." тут пишем, что добавить:<br>var Заменить_На = "http://www.script-info.net/dhtml/html/htmltags.php?part=";<br><br>/* Регулярные выражения<br>справка на http://script-info.net/jsvbs/msscript/js56/js56jsgrpregexpsyntax.php<br>-------------------------<br>Спецсимволы, которые необходимо<br>экранировать в шаблоне поиска слэшем (\):<br>) ( . / ? ^ $ * + } { ] [<br><br>Краткая справка<br>-------------------------<br>^ начало строки<br>$ конец строки<br>* {0,} ноль и более раз<br>+ {1,} один и более<br>? {0,1} ноль или один<br>? после (*, +, ?, {n}, {n,}, {n,m}) обозначает<br> "выбрать комбинацию минимальной длины"<br> . любой символ кроме \n<br>[.\n] любой символ<br><br>параметры:<br>-------------------------<br>i игнорировать регистр при поиске<br>g искать все вхождения<br><br>примеры:<br>-------------------------<br><br>/^\[ \t]*$/g  поиск пустых строк<br><br>Windows (?=95|98|NT|2000) Соответствует слову "Windows" в фразе<br>   "Windows 2000" но не в фразе "Windows 3.1".<br>*/<br><br>//////////////////////////////////////////////////////////////////////<br>// Дальше что-либо менять нежелательно<br><br>var Счет = 0;<br>var Файлов = 0;<br>var ForReading = 1, ForWriting = 2, ForAppending = 8;<br>var TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0;<br>var WSHShell = WScript.CreateObject("WScript.Shell");<br>var fso = new ActiveXObject("Scripting.FileSystemObject");<br>CurrentFolder = Каталог;<br>ScanFolders(CurrentFolder);<br>WSHShell.Popup("Работа выполнена" + Новая_строка + Новая_строка +<br>    "Файлов изменено:\t" + Файлов + Новая_строка +<br>    "Число операций:\t\t" + Счет);<br><br>// Проверяем все вложенные подкаталоги<br>function ScanFolders(folderspec) {<br>//WSHShell.Popup(folderspec);<br> var f, fc;<br> SearchFiles(folderspec);<br> f = fso.GetFolder(folderspec);<br> fc = new Enumerator(f.SubFolders);<br> for (; !fc.atEnd(); fc.moveNext())<br> {<br>     NextFolder = fc.item();<br>     ScanFolders(NextFolder);<br> }<br>}<br>// Получение списка файлов в каталоге<br>function SearchFiles(folderspec) {<br>   var f, fc, s;<br>   f = fso.GetFolder(folderspec);<br>   fc = new Enumerator(f.files);<br>   s = "";<br>   for (; !fc.atEnd(); fc.moveNext())<br>   {<br>      s = fc.item();<br>   CurrentType=FileType(s);<br>    if(CurrentType.search(Тип_Файлов)==0){<br>  switch (Выполнить) {<br>   case Поиск_и_Замену :<br>    FileModyfy(s);<br>    break;<br>   case Добавление_в_Начало :<br>    AppedBegin(s);<br>    break;<br>   case Добавление_в_Конец :<br>    AppedEnd(s);<br>    break;<br>  }<br>    }<br>   }<br>}<br>// получение типа файла<br>function FileType(filespec) {<br>   var f, s;<br> if (fso.FolderExists(filespec)){<br>      f = fso.GetFolder(filespec);<br> } else {<br>  if (fso.FileExists(filespec)) {<br>   f = fso.GetFile(filespec);<br>  } else {<br>   s = "Error: File or Folder does not find.";<br>  }<br>  s = f.Type;<br> }<br> //WSHShell.Popup (s);<br> return(s);<br>}<br>// добавление строки в начало<br>function AppedBegin(currentFile) {<br> FileHeader = currentFile.OpenAsTextStream(ForReading, TristateUseDefault);<br> FileString = FileHeader.ReadAll();<br> FileHeader.Close( );<br> FileString = Заменить_На + FileString;<br>  FileHeader = currentFile.OpenAsTextStream(ForWriting, TristateUseDefault);<br>  FileHeader.Write(FileString);<br>  FileHeader.Close( );<br> Файлов += 1;<br> Счет += 1;<br>}<br>// добавление строки в конец<br>function AppedEnd(currentFile) {<br> FileHeader = currentFile.OpenAsTextStream(ForReading, TristateUseDefault);<br> FileString = FileHeader.ReadAll();<br> FileHeader.Close( );<br> FileString = FileString + Заменить_На;<br>  FileHeader = currentFile.OpenAsTextStream(ForWriting, TristateUseDefault);<br>  FileHeader.Write(FileString);<br>  FileHeader.Close( );<br> Файлов += 1;<br> Счет += 1;<br>}<br>// удаление/замена строки<br>function FileModyfy(currentFile) {<br> FileHeader = currentFile.OpenAsTextStream(ForReading, TristateUseDefault);<br> FileString = FileHeader.ReadAll();<br> FileHeader.Close( );<br> var tr = FileString.match(Шаблон_Поиска);<br> if (tr)<br> {<br>  Счет = Счет + tr.length;<br>  Файлов += 1;<br> }<br> FileString = FileString.replace(Шаблон_Поиска, Заменить_На);<br>  FileHeader = currentFile.OpenAsTextStream(ForWriting, TristateUseDefault);<br>  FileHeader.Write(FileString);<br>  FileHeader.Close( );<br>}<br><br><br>
                        Дык правильно, это через filesystemobject, который, как известно из физики, имеет место только в java server pages, которые, как недавно договорильсь, яваскриптом не являются.
                          Ну или через Актив Хэ, как в данном случае. Соррь, не спал давно. Дык в помошью Актив Хэ, как показывает практика, можно не только в файл написать, но и систему пустить в длительное эротическое путешествие.
                          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                          0 пользователей:


                          Рейтинг@Mail.ru
                          [ Script execution time: 0,0336 ]   [ 16 queries used ]   [ Generated: 23.04.24, 15:30 GMT ]