Strict Standards: Resource ID#34 used as offset, casting to integer (34) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#36 used as offset, casting to integer (36) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#37 used as offset, casting to integer (37) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: ошибка в JS с Array-ем и стрингами [2]
ТвойWeb » WebMaster класс » JavaScript » ошибка в JS с Array-ем и стрингами

Страниц (2): « 1 [2]
 

11. Дмитрий Б. - 16 Марта, 2005 - 08:41:43 - перейти к сообщению
А можно написать тот же скрипт с юзерами гораздо проще и компактнее:
CODE:
<!--
var client = new Array("First Client#24148#str.Pushkina/46", "Second Client#21528#str.Gagarina/156", "Third Client#24256#str.Mira/6");
-->

Или:
CODE:
<!--
var client ="First Client#24148#str.Pushkina/46,Second Client#21528#str.Gagarina/156,Third Client#24256#str.Mira/6".split(',');
-->
12. ETC - 16 Марта, 2005 - 12:18:00 - перейти к сообщению
Или
CODE:
var client = ["First Client#24148#str.Pushkina/46","Second Client#21528#str.Gagarina/156","Third Client#24256#str.Mira/6"]
13. Леголегс - 17 Марта, 2005 - 15:04:10 - перейти к сообщению
Дмитрий Б.
Привет Улыбка Собсно тот код, что я привёл выдран из Юпсола и действительно работает только локально, но как мне показалось это и требуется
14. Alfa - 17 Марта, 2005 - 15:10:01 - перейти к сообщению
Леголегс
Ты и вправду JS-маньяк Улыбка
С чтением файлов мож момочи? то есть написать как скрипт будет читать каждую строчку как элемент масива из вайла с такой структурой:

...
>First Client#24148#str.Pushkina/46
>Second Client#21528#str.Gagarina/156
>Third Client#24256#str.Mira/6
...
15. Дмитрий Б. - 18 Марта, 2005 - 03:39:54 - перейти к сообщению
Я могу... Прямо счас:
CODE:
var fso=new ActiveXObject("Scripting.FileSystemObject");

var adress=window.location.href;
adress=adress.slice(8);
adress=adress.split("/").join("\\");
adress=adress.slice(0, adress.lastIndexOf("\\")+1);
adress=adress.split("%20").join(" ");
adress+='Имя_файла';

var myfile=fso.OpenTextFile(adress, 2);
var client=myfile.ReadAll().split('\r').join('').split('\n');
myfile.close();

А теперь самое приятное - в массиве client уже лежат все строки. Только символ > в начале мешает, но это можно исправить:
CODE:
var i;
for(i=0; i<client.length; i++) if (client[i].charAt(0)=='>') client[i]=client[i].slice(1);
16. Alfa - 18 Марта, 2005 - 07:38:47 - перейти к сообщению
Дмитрий Б. пишет:
Только символ > в начале мешает,

Это ешё лучше, я просто думал что он понадобится для указывания новой строки.
Дмитрий Б. пишет:
adress+='Имя_файла';

А этот плюсик сдесь не лишний?
Леголегс пишет:
Разумеется, для веб-страниц этот метод не подходит.

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

Да, скрипт мне на локалке нужен, но может и в нет поставлю, я вообше-то собираюсь еше в этот скрипт добавить возможность пойска среди этих client-ов, но это уже я сам постараюсь
17. ETC - 18 Марта, 2005 - 08:06:53 - перейти к сообщению
Alfa пишет:
но может и в нет поставлю

В нете работать не будет
18. Дмитрий Б. - 19 Марта, 2005 - 06:52:14 - перейти к сообщению
Нет, плюсик необходим.
19. Дмитрий Б. - 20 Марта, 2005 - 03:06:35 - перейти к сообщению
Если файл в той же папке, что и страница. Если нет - строки
CODE:
var adress=window.location.href;
adress=adress.slice(8);
adress=adress.split("/").join("\\");
adress=adress.slice(0, adress.lastIndexOf("\\")+1);
adress=adress.split("%20").join(" ");
adress+='Имя_файла';
меняются на
CODE:
var adress='Полный_путь_к_файлу';

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0392]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33