Помогите с JavaScript
Я хочу включить в свою страницу файлы с именами 1.js, 2.js и т.д.
В файлах находятся переменные, типа: a="123"; b="456"; причем в каждом файле одинаковые переменные. Я хочу создать из них массив, типа ArrA[i]=a; - и таким образом заполнить его в цикле. Не знаю, как это сделать. Пробовал написать примерно так: <script language=javascript> for(..... document.write("<sc"+"ript language=javascript src="+i+".js></sc"+"ript>"); ArrA[i]=a; ArrB[i]=b; ... и т.п. </script> Но проблема в том, что файлы с этими переменными не сразу включаются в мою страницу, а включаются только после строки </script>. Поэтому у меня не получается присваивать значения массиву. Что же мне делать? |
Ээээ....
<script language=JS src="<путь к файлу>"> вот так, должно получится.... |
не дописал:
а потом пишите еще раз script и делаете массив... во только не понятно, зачем анцы с бубном? не сделать 1 файл?... |
Xcode
Мне нужно подключать разные файлы, причем заранее неизвестное количество - сделать в одном файле не смогу. Если можно, напишите поподробнее - мне надо в цикле перебирать эти имена и включать их. Напишите, пожалуйста, как это должно выглядеть вместе с циклом. |
на самом деле с JS особо не дружу, но могу посоветовать использовать связку PHP + JS... PHP пишем JS подключения нужных файлов(томеж <script src...>)? а потом уже саму оброботку их...
(скорре всего ничего не понятно => нужно подождать ответа более компитентных людей) |
Вы лучше в самих файлах, которые подключаете, сразу пишите массив значений. Причем массив ассоциативный лучше (так можно будет получить значение по имени переменной). А при подключении массив не нужно будет формировать.
|
Prisoner
Я бы не против, но у меня условие такое: В файлах находятся переменные, типа: a="123"; b="456"; причем в каждом файле одинаковые переменные. |
Так... а почему в каждом включаемом файле не писать что-то вроде
Код:
arr = new Array(); |
Prisoner
Когда я делаю инклюды в цикле, то не могу при этом обрабатывать включенные массивы, т.к. все функции обработки выполняются только после включения всех файлов. Вот мой главный файл: <script language=javascript> for(i=0;i<3;i++){ document.write("<sc"+"ript language=javascript src="+i+".js></sc"+"ript>"); } for(i=0;i<3;i++){ document.write(Arr[ i]+","); // Эта строчка ничего не выводит. } </script> // После этой строки включаются все файлы. При этом остаются значения из последнего файла. <script language=javascript> for(i=0;i<3;i++){ document.write(Arr[ i]+","); // Эта строчка выводит массив в виде: undefined,undefined,789, } </script> Подскажите, как мне написать цикл, чтобы я мог обрабатывать каждый файл сразу после его включения. |
Лично я бы сделал всего один инклюд некого js-файла (something.js) который являлся бы простым php-скриптом и генерил валидный js-код массива... это самое, имхо, рациональное решение при наличии php на хосте. Остальное - от лукавого, будем пробовать?
|
Prisoner
Хост не мой. php там запрещено. :-( |
Включаемые js-файлы полностью под твоим контролем?
|
Prisoner
Да, но есть некоторые соображения, чтобы они были с одинаковыми переменными. |
Можно сделать один включаемый js-файл и уже в нем решать какие переменные и чем означивать и сразу массивом причем делать это. А еще советую почитать тему по хостингу этого форума и найти хостинг занахаляву, но с php, есть такие...
|
Время: 13:48. |
Время: 13:48.
© OSzone.net 2001-