Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/41: Рейтинг темы: голосов - 41, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 6

Кнопка вкл/выкл на JS

09.06.2014, 14:05. Показов 8366. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем есть кнопка Power (включения/выключения). Есть две ссылки. Надо чтобы, когда первый раз нажимаем на кнопку шел переход на одну ссылку, второй раз, соответственно, на вторую и т.д. (3 раз - 1 ссылка, 4 раз - 2 ссылка....). в js ничего не смыслю толком нашел только переход на одну ссылку
HTML5
1
2
3
4
5
6
<script type="text/javascript">
        function goJs() {
 
        window.location="ссылка"
        }
    </script>
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.06.2014, 14:05
Ответы с готовыми решениями:

Кнопка вкл/выкл
Добрый день. Не могу справиться с задачей, надеюсь на помощь знающих. Необходимо сделать кнопку-переключатель, нажатие которой будет...

Как выполнить javascript, после проверки (сохранения) результата в радиокнопке (вкл.выкл)
Нужно выполнить javascript, после проверки (сохранения) результата в радиокнопке (вкл.выкл). И возможно еще его потребуется вшить в другой...

Кнопка fn вкл/выкл
Всем привет. Не подскажете как выключить активное состояние кнопки fn? Кнопка fn у меня по умолчанию активна. что мешает в работе и в...

8
супермизантроп
Эксперт JS
3941 / 2979 / 692
Регистрация: 18.04.2012
Сообщений: 8,629
09.06.2014, 14:14
правильно ли я понял, что:

1) в окне браузера открывается ваша страница с кнопкой
2) по нажатию на кнопку ваша страница заменяется на какую-то другую в этом же окне
3) когда (может быть, через месяц или даже через год) этот же посетитель вновь зайдёт на вашу страницу, нажатие на ту же кнопку должно отправить его уже по другому адресу
и т.д.
0
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 6
09.06.2014, 14:24  [ТС]
1) да
2) Страница по сути не должна открываться должно быть чтобы нажал на кнопку первый раз передалось значение
1 - http://localhost/smarthome/ind... =1&rele=on
второй раз
2 - http://localhost/smarthome/ind... 1&rele=off
и т.д.
Спасибо за быстрый ответ)
Сейчас вот такая ситуация, надо на одну кнопку поменять
<p><a href='?action=ZonyView&zoneid=1&rele=on' >Включить реле</a></p>
<p><a href='?action=ZonyView&zoneid=1&rele=off '>Вылючить реле</a></p>
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
09.06.2014, 14:48
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<!DOCTYPE html>
<html>
  <head>
 
  <meta charset="utf-8">
  <title>Switcher</title>
<script src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
  </head>
<body>
  <button id="switcher">Switcher</button>
  <script>
var switcher = false;
 
$('#switcher').click(function(){
  switcher = switcher ? false : true;
  switch(switcher){
    case true : window.open('http://link1'); break;
      case false : window.open('http://link2'); break;
  }
});
  </script>
</body>
</html>
1
 Аватар для mihalken
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
09.06.2014, 14:51
Лучший ответ Сообщение было отмечено jokerkri как решение

Решение

Padimanskas, это раздел JavaScript. Без JQ.

Цитата Сообщение от jokerkri Посмотреть сообщение
надо на одну кнопку поменять
HTML5
1
<a href="?action=ZonyView&zoneid=1&rele=on" rele="on" id="power-rele">Power rele on /off</a>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function parseGetParams() { 
    var $_GET = {}; 
    var __GET = window.location.search.substring(1).split("&"); 
    for(var i=0; i<__GET.length; i++) { 
      var getVar = __GET[i].split("="); 
      $_GET[getVar[0]] = typeof(getVar[1])=="undefined" ? "" : getVar[1]; 
    } 
    return $_GET; 
}
 
window.onload = function() {
    var GETArr = parseGetParams();
    
    var btn_power_rele = document.getElementById( 'power-rele' );
    var cur_status_rele = GETArr['rele'] == 'on' ? 'off' : 'on';
    
    btn_power_rele.href = "?action=ZonyView&zoneid=1&rele=" + cur_status_rele;
    btn_power_rele.setAttribute('rele',  cur_status_rele);
    btn_power_rele.innerHTML = "Power rele " + cur_status_rele;
    
    document.getElementById( 'power-rele' ).onclick = function() {
        window.location.href = "?rele=" + this.getAttribute('rele');
    }
}
jokerkri, ?
1
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 6
09.06.2014, 15:25  [ТС]
Padimanskas , mihalken, спасибо большое за ответ. Работают оба варианта. (ну вроде как=)). Вопрос к mihalken, а как поменять текст , вместо ссылки я сделал кнопку
HTML5
1
<button rele="on" id="power-rele">Включить реле</button>
поменял
JavaScript
1
 btn_power_rele.innerHTML = "Power rele " + cur_status_rele;
на
JavaScript
1
btn_power_rele.innerHTML = "Включить/выключить: " + cur_status_rele;
но что то не то )) я хочу чтобы было в начале на кнопке - "Включить реле" нажал текст поменялся на "Выключить реле", заранее спасибо
0
 Аватар для mihalken
97 / 97 / 74
Регистрация: 15.05.2014
Сообщений: 269
Записей в блоге: 2
09.06.2014, 15:33
JavaScript
1
btn_power_rele.innerHTML = "Power rele " + cur_status_rele;
на
JavaScript
1
btn_power_rele.innerHTML = (cur_status_rele == "on" ? "Включить" : "Выключить") + " реле";
?

Добавлено через 3 минуты
и
JavaScript
1
window.location.href = "?rele=" + this.getAttribute('rele');
на
JavaScript
1
window.location.href = "?action=ZonyView&zoneid=1&rele=" + this.getAttribute('rele');
1
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 6
09.06.2014, 15:33  [ТС]
mihalken, огромное спасибо )) все работает правда, мало что понятно )) надо будет найти книжечку JS с нуля для чайников )
0
0 / 0 / 0
Регистрация: 01.03.2020
Сообщений: 2
01.03.2020, 14:30
Столкнулся с похожей задачей. Есть вай фай розетка к которой будет подключено 4 потребителя (свет на разных источниках)
Выше написанное решение работает но только на одной кнопке. Подскажите как мне функцию ко второй и последующим кнопкам сделать.

вот Html
HTML5
1
<button class="esp" rele="on" id="power-rele"></button>
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function parseGetParams() { 
    var $_GET = {}; 
    var __GET = window.location.search.substring(1).split("&"); 
    for(var i=0; i<__GET.length; i++) { 
      var getVar = __GET[i].split("="); 
      $_GET[getVar[0]] = typeof(getVar[1])=="undefined" ? "" : getVar[1]; 
    } 
    return $_GET; 
}
 
window.onload = function() {
    var GETArr = parseGetParams();
    
    var btn_power_rele = document.getElementById( 'power-rele' );
    var cur_status_rele = GETArr['rele'] == 'on' ? 'off' : 'on';
    
    btn_power_rele.href = "?action=ZonyView&zoneid=1&rele=" + cur_status_rele;
    btn_power_rele.setAttribute('rele',  cur_status_rele);
    btn_power_rele.innerHTML = (cur_status_rele == "on" ? "Включить" : "Выключить") + " реле";
    
    document.getElementById( 'power-rele' ).onclick = function() {
    window.location.href = "?action=ZonyView&zoneid=1&rele=" + this.getAttribute('rele');
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.03.2020, 14:30
Помогаю со студенческими работами здесь

Кнопка, которая вкл/выкл курсивное начертание шрифтов на форме
кнопка, которая вкл/выкл курсивное начертание шрифтов на форме, не меняя другие параметры шрифтов;

Вкл\Выкл сетки
Включаю сетку и рисую на ней круги, затем я хочу убрать сетку, как это можно сделать? Есть код для удаления всех итемов в сетки, но как...

Вкл\выкл Oracle
Сервер БД и БД стоит на Windows server. Все необходимые службы запущены. при попытки выполнить script. spool on; shutdown immediate;...

Вкл\выкл AVR`ом
Всем привет! Нужно с ноги AVR`а включать на продолжительное время (несколько часов \ сутки) и затем отключать нагрузку около 31В 9А. С...

Настроить вкл/выкл WiFi
Всем здравствуйте. Я установил убунту 11.04 и столкнулся со следующей проблемой. Есть выключатель WiFi на самом ноутбуке, соответственно,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru