Помогите пожалуйста!!!
Приветствую уважаемые мастера. Помогите пожалуйста с решением. В js вообще полный 0.
Суть проблемы такова: стал вопрос сделать запоминание вводимых пользователем данных, и их выводе при следующем входе пользователя на определенную страницу. Порядок такой: должно быть 2 окошка в первое человек к примеру вводи 10 а во второе 35 и эти данные должны запомниться до следующего входа пользователя. P/S также требуется что бы была кнопочка очистить. То есть чтобы человек мог очистить предыдущие значения и ввести новые. Помогите пожалуйста. Заранее большое спасибо. |
Дёшевo и сердито:
<html><head> <script> function Loader() { document.getElementById("User").value = sessionStorage.getItem("User"); } </script> </head> <body onload='Loader()'> <input id=User type=text placeholder='Введите данные и обновите страницу' value='' onkeyup='sessionStorage.setItem("User", this.value)'/> </body>Продвину ый вариант: <html><head> <script> function Loader() { var inputs = document.getElementsByTagName("input"); // Запрашиваем коллекцию input-полей var count = inputs.length; // Узнаём общее число полей в коллекции while(count --) { // Пробегаем по каждому полю в обратном порядке var id = inputs[count].id; // Выпытываем у очередного поля его государственный идентификатор inputs[count].value = sessionStorage.getItem(id); // Заносим в поле данные соответствующие идентификатору } } </script> </head> <body onload='Loader()'> <input id=User type=text placeholder='Введите данные и обновите страницу' value='' onkeyup='sessionStorage.setItem(this.id, this.value)'/><br /> <input id=Looser type=text placeholder='Введите данные и обновите страницу' value='' onkeyup='sessionStorage.setItem(this.id, this.value)'/><br /> <input id=Buzzer type=text placeholder='Введите данные и обновите страницу' value='' onkeyup='sessionStorage.setItem(this.id, this.value)'/><br /> </body>P.S.: Вся необходимая инфа на тему… |
Спасибо большое!
|
Помогите плиз
Мне поставлена задача написать скрипт в устройстве телемеханики, а именно есть определенные дискретные сигналы которые ретранслируют информацию на сервер телемеханики и имеют возможность телеуправления. При сработки телесигнализации от одного до трех одновременно (т.е. 0 меняется на 1), необходимо чтобы четвертый ТС подал команду на телеуправление дискретного сигнала. В связи с этим начал писать скрипт:
while (true) { if (TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0) { tmControl(X, Y, Z, 1); 1 - включить ТУ 4 телесигнала } sleep(2000); } Совет разработчика: В основном цикле сделайте какую-нибудь переменную, после первой команды телеуправления увеличивайте значение этой переменной, по прошествии какого-то времени соответственно принимайте действия, если ТС не переключился. Мастера своего дела помогите пожалуйста дописать скрипт чтобы скрипт работал. Необходимо чтобы скрипт подал команду телеуправления 4 телесигнала и если 4 телесигнал включился перестать подавать команду телеуправления 4 телесигнала. Я в программирование не разбираюсь, а задачу решить надо. |
rinat_n86, если ваш код на JavaScript написан (в чем я сомневаюсь), то так:
var flag = 0; while (!flag) { if (TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0) { tmControl(X, Y, Z, flag = 1); //1 - включить ТУ 4 телесигнала } sleep(2000); } |
Цитата:
|
rinat_n86, You speak Russian?
Which language you code written? |
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
|
Ну вы же сами сказали, что есть четыре команды, которые выполняются последовательно по таймеру. А это в общем то запустить 4 раза таймер, и достаточно проверять итерацию цикла по которому они и запускаются - если четвертая (последняя), значит последняя команда.
Вообще-то телеметрия подразумевает обратную связь, а значит сигнал обратной связи может служить индикатором того, что выполняется/выполнено в данный момент времени. |
Цитата:
|
Так я задавал вопрос, каким образом можно подавать следующие команды не опросив порт что он изменил состояние, или не получив обратный сигнал, на что получил ответ, что этого не требуется. А как же тогда можно узнать завершены ли предыдущие команды и можно подавать следующую? Или то что прописано в условии, это и есть сигналы ответа (состояние) на ранее переданные команды?
|
Вообще в самом блоке телесигнализации прописано передавать ТС с временем 30 сек. По трассировке смотрю состояние 4 ТС передает, но мне кажется скрипт не понимает состояние ТС4, так как в скрипте не указан его состояние.
if (TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0) { здесь указано состояние тс с 1 по 3 далее команду ТУ tmControl(X, Y, Z, 1); 1 - включить ТУ 4 телесигнала и вот здесь надо как то указать состояние 4-го ТС (как if (TM('#TCX:Y:Z') == 1). Вопрос здесь if надо? далее команду ТУ не выполняется } sleep(2000); } Совет разработчика: В основном цикле сделайте какую-нибудь переменную, после первой команды телеуправления увеличивайте значение этой переменной, по прошествии какого-то времени соответственно принимайте действия, если ТС не переключился. Подскажите и помогите:help: |
Цитата:
Цитата:
|
Цитата:
Это не условие запуска команды, а состояние телесигнализации |
Цитата:
Цитата:
|
Цитата:
if (TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0) { tmControl(X, Y, Z, 1); 1 - включить ТУ 4 телесигнала } if (TM('#TCX:Y:Z') == 1 var cont==1 sleep(2000); } Мне так надо оставлять скрипт или я ошибку допускаю:( |
laimas, в какой среде исполнения в js появляется блокирующая поток функция sleep?
|
Я не понимаю причем тут цикл и проверкой if(xxx==0 && xx==0 ...), а как все это работает вы не поясняете, либо я не понял ничего из пояснения.
while (true) {}, это похоже на описание основного блока кода, main, как например в программе на Си для микроконтроллера. Допустим, что в этом основном блоке нужно выполнить последовательно, четыре команды, каждая выполняется после запуска предыдущей и возврате состояния 0. То есть это будет цикл который выполнит четыре раза определенные в нем действия. var n = 4; while(n--) { alert(1) } Если определять итерацией команду, которую нужно выполнить, то n = 1, while(n<=4) {n++; после запуска каждой команды}. Ну соответственно проверяя состояние после выполнения каждой, а не всех, ведь если любая из них не вернет 0, надо полагать это ошибка и выход. |
Цитата:
|
laimas,
Цитата:
|
Цитата:
|
laimas,
С | C++ знаете? |
j0hnik,
и что? |
laimas,
это был вопрос. |
Что я знаю, чего нет, к теме отношения не имеет, а что тут за язык я не знаю. Си язык типизированный, чего не наблюдается в данном случае.
|
Доброе утро профессора. Функция sleep используется для остановки, но почему мне кажется она не работает. На яндекс диск выложил выписки из инструкции в формате zip.
https://yadi.sk/d/HrqPe-483UGRm9 |
Цитата:
|
Профессора своего дела помогите написать скрипт: Задача стоит в следующем
Есть три положения телесигнализации (откл/вкл) и при срабатывание всех трех ТС в положении откл должна подаваться команда телеуправления на четвертый ТС для его включения. При этом если команда телеуправления 4 ТС прошла успешно и включилась, последующие команды телеуправления 4 ТС не подавать. При изменении положения ТС, блок ТС автоматически передает его состояние, но в скрипте как то надо указать его контроль состояния. Я уже весь запутался в написании скрипта и голову сломал. Если бы понимал в программировании, то мог бы сам написать скрипт |
А чему равно состояние 4ТС до момента срабатывания?
Если знать надо ли, то это просто проверить if(!TC1 && !TC2 && !TC3 && TC4) run TC4 PS. Кстати, а почему обычный счетчик, о чем ранее говорилось, не может служить признаком? |
laimas,
А не так? if(!TC1 && !TC2 && !TC3 && !TC4) run TC4 т.е включить когда ВСЕ выключены. Цитата:
|
Цитата:
Судя по ранее сказанному, выполнено, это 0, а значит не выполнено еще, это либо 1, либо ... не знаю что. А значит запускать 4 или нет, это false && false && false && true. Или если знать выполнены ли все и поступать от этого, то можно и так. Вроде бы очевидно, а вот почему проблемы при этом, я так и не смог понять. |
laimas,
Конечно, это гадание на кофейной гуще, но у меня сложилось впечатление, что анализируются не результаты выполнения команд, а состояния каналов -включен/выключен |
Цитата:
(TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0 && TM('#TCX:Y:Z') == 0) ТМ-телемеханика, ТС-телесигнал, Х-номер канала, Y-номер КП, Z- номер ТС, ==0/1 - состояние ТС (откл/вкл) tmControl(X, Y, Z, 1) 1 - включить команда телеуправления |
rinat_n86,
а если начитать с начала, когда еще не было команд. Подается первая команда, она выполняется функцией tmControl(X, Y, Z, 1) и от нее получает состояние? Если да и запуск первой команды вернул не 0, тогда что? |
после выполнения команды телеуправления состояние телесигнализации не приходит. Вот здесь мне надо как то указать виде наверно переменной чтоб проводил опрос состояния ТС после команды ТУ. Если состояние ТС изменилосьс 0 на 1 то надо чтобы команда ТУ прекратилось
|
Цитата:
Если проблема только проверить, то ее быть не должно, if(....) и все. В чем тогда суть проблемы? |
Часовой пояс GMT +3, время: 17:50. |