2015-04-28 2 views
5

Я создаю сайт с Bootstrap, и я хотел бы ввести оператор if-else, но я не знаю, как это сделать. Поясню:HTML/PHP if-else Statement

Вот изображение моего текущего HTML сниппет: enter image description here

Теперь то, что я хочу, что если я изменю от «OFF» в положение «ON» на «Ап-/Ausschalten», что автоматически «Status Aktuell» превращается из «OFF» в положение «ON», а также другим способом, так оно должно выглядеть следующим образом:

enter image description here

Мой текущий HTML код для этой части:

<div class="col-xs-12 col-sm-4 col-md-4 col-lg-4"> 
<div class="services-wrapper"> 
<h3>GENERALSTEUERUNG</h3> 
Steuern Sie mit nur einem Klick die komplette Lichtanlage Ihres Hauses.<br><br> 
<b>Status aktuell:</b> <input id="switch-offColor" type="checkbox" data-off-color="warning" data-size="mini" readonly><br><br> 
<b>An-/Ausschalten:</b> <input id="switch-offColor" type="checkbox" data-off-color="warning" data-size="mini">   
</div> 
</div> 

Может кто-нибудь сказать мне, что, если код-else, который я должен использовать, чтобы сделать это возможным? Каким должен выглядеть код, чтобы это сработало?

Я был бы очень признателен за вашу помощь.

Спасибо, Chris

+3

Лучше использовать JavaScript/JQuery для этого. – Daan

+1

Нет необходимости в инструкции if else, это может быть сделано с помощью jQuery –

ответ

3

Привет, что вам нужно сделать, это

первым отслеживать событие изменения флажка с помощью

$('#ID').change(function() { 
     // do any thing 
    }); 

Затем вы должны установить проверили свойство другого флажка

$("#id").attr("checked","checked"); 

код хотел similer к

$('#ID').change(function() { 
var checked = $("#id").prop("checked"); 
      if (checked){ 
$("#id").attr("checked","checked"); 
} 
     }); 
+0

Как и в случае с jQuery 1.6, метод .attr() возвращает undefined для атрибутов, которые не были установлены. Чтобы получить и изменить свойства DOM, такие как проверенные, выбранные или отключенные состояния элементов формы, используйте метод .prop(). – Daan

+0

, пожалуйста, напишите свой код, который вы попробовали –

+1

Почему? Я не задавал этот вопрос. Я просто говорю, что лучше использовать '.prop' – Daan

0

У вас есть два элемента с одинаковыми идентификаторами ID = "переключатель-offColor". Это не хорошая практика. Вы должны рассмотреть возможность использования класса для этого: class = "switch-offColor", если вы хотите, чтобы вы css применили этот флажок.

Тогда это сделать:

$(".switch-offColor").change(function(){ 
if($(this).prop('checked')){ 
    $(".switch-offColor").attr('checked','checked'); 
} 
}); 

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

Вы можете использовать другой класс для обработки этого и отделить свой CSS: class = "switch-offColor myLinked_checkboxes" или любое ваше имя.

Посмотрите на эту скрипку: https://jsfiddle.net/73af3hjh/

+0

Спасибо за ваш код. В jsfiddle он работает, на моем сайте он не работает. См. Здесь: http://smarthome.czellary.at/haushaltsgeraete.php (верхний левый бокс)! Когда вы смотрите на исходный код, что я делаю неправильно? –

+0

вы используете бутстрап. Это другое. Посмотрите на этот ответ: http: //stackoverflow.com/questions/18911067/bootstrap-switch-global-checkbox-to-uncheck-all-other –

Смежные вопросы