Показать сообщение отдельно
  #9 (permalink)  
Старый 11.09.2009, 02:24
Интересующийся
Отправить личное сообщение для alk0v Посмотреть профиль Найти все сообщения от alk0v
 
Регистрация: 03.09.2009
Сообщений: 10

возникла еще одна проблема, теперь связанная с обновлением данных. По Вашему совету сделал следующее:
в заголовке html добавил строку
<script type="text/javascript" src="files/settings.txt"></script>

в файле settings.txt все мои переменные объявлены как глобальные и я с ними нормально работаю, вот его содержимое:
var outs = [1,0,1,0];
var uptime = 199141000;
var sens = [0,'01:10:34 10.12.2009','05:10:34 10.12.2009',0];


т.е. и sens и outs у меня массивы с четырьмя элементами в каждом.

Но появилась необходимость опрашивать значение переменной sens раз в секунду (устройство при изменении состояния просто перезаписывает этот файл настроек, т.е. он может обновляться в процессе работы)

Решения, как переинициализировать глобальные переменные раз в секунду без полной перезагрузки страницы я не нашел, поэтому сделал отдельный файл sens.txt в котором содержится следующая запись:
[0,'01:10:34 10.12.2009','05:10:34 10.12.2009',0]
; и устройство, соответственно, перезаписывает только этот файл sens.txt

данный файл я запрашиваю 1 раз в секунду с помощью процедуры XMLHttpRequest, а затем делаю присвоение
sens = responseText, но строка возвращается в виде одной стринговой переменной "[0,'01:10:34 10.12.2009','05:10:34 10.12.2009',0]"
Можно ли ее как-то обратно преобразовать в массив с четырьмя элементами, или может есть альтернативное решение?
Ответить с цитированием