2015-05-04 5 views
0

У меня есть выбор ввода с несколькими параметрами и код jQuery, который показывает div при выборе определенной опции. В настоящее время я использую это:Получить значение при выборе только при нажатии

$('#id_treatment_type').val() == '1' 

Он отлично работает на хром, но не в Firefox. Когда я устанавливаю мышь на опцию (без щелчка), она меняет значение параметра.

В Chrome это работает, потому что значение изменяется только тогда, когда я нажал на эту опцию.

Проблема заключается в том, что я должен поставить это в цикле, потому что у меня есть способ много полеев, чтобы установить .Кнопку на всех

window.setInterval(function(){alerts();}, 5000); 

Я бы установить этот интервал до несколько мса, потому что мне нужно покажите div быстрее.

Мне нужно, чтобы он работал на firefox, но я не знаю, как, если у кого-то есть идея. Извините за мой английский, но я надеюсь, что вы поймете, что я пытаюсь сказать.

Спасибо

+0

Заканчивать https://api.jquery.com/change/ вы должны быть в состоянии «наблюдать» за изменениями в выборе, вместо того, чтобы просить изменения каждые х секунд. –

+0

Вам не нужен цикл, вам просто нужно дать этим входам событие «change» –

+0

Можете ли вы предоставить рабочий пример (с вашей html-разметкой) того, что вы пытаетесь? – empiric

ответ

0

Вы можете использовать событие смены. Пример

$('#id_treatment_type').on('change', function(){ 
 
\t \t alert($(this).val()); 
 
\t });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select name="id_treatment_type" id="id_treatment_type"> 
 
\t <option value="1">1</option> 
 
\t <option value="2">2</option> 
 
\t <option value="3">3</option> 
 
</select>

0

Я сделал скрипку с небольшим примером:

https://jsfiddle.net/usz5pyhv/

<select id="mySelect"> 
    <option value="1">one</option> 
    <option value="2">two</option> 
</select> 
<div id="whenValOne">Value is one</div> 

$(function() { 
    $("#mySelect").change("change", function() { 
     if(this.value == 1) 
     $("#whenValOne").show(); 
     else 
     $("#whenValOne").hide();    
    }); 
}); 
Смежные вопросы