Подтвердить что ты не робот

Javascript

У меня есть 2 переключателя и jquery.

<input type="radio" name="lom" value="1" checked> first
<input type="radio" name="lom" value="2"> second

Теперь, с помощью кнопки, я могу установить onClick для запуска функции. Как заставить переключатели запускать функцию, когда я нажимаю на одну из них?

4b9b3361

Ответ 1

Вы можете использовать .change для того, что вы хотите

$("input[@name='lom']").change(function(){
    // Do something interesting here
});

по состоянию на jQuery 1.3

вам больше не нужно "@". Правильный способ выбора:

$("input[name='lom']")

Ответ 2

Если у вас есть радиостанции в контейнере с id = radioButtonContainerId, вы все равно можете использовать onClick, а затем проверить, какой из них выбран, и соответственно запустить некоторые функции:

$('#radioButtonContainerId input:radio').click(function() {
    if ($(this).val() === '1') {
      myFunction();
    } else if ($(this).val() === '2') {
      myOtherFunction();
    } 
  });

Ответ 3

<input type="radio" name="radio" value="creditcard" />
<input type="radio" name="radio" value="cash"/>
<input type="radio" name="radio" value="cheque"/>
<input type="radio" name="radio" value="instore"/>

$("input[name='radio']:checked").val()

Ответ 4

Есть несколько способов сделать это. Независимо от наличия контейнера вокруг радиокнопок, но вы также можете поместить класс непосредственно на кнопки. С помощью этого HTML:

<ul id="shapeList" class="radioList">
<li><label>Shape:</label></li>
<li><input id="shapeList_0" class="shapeButton" type="radio" value="Circular" name="shapeList" /><label for="shapeList_0">Circular</label></li>
<li><input id="shapeList_1" class="shapeButton" type="radio" value="Rectangular" name="shapeList" /><label for="shapeList_1">Rectangular</label></li>
</ul>

вы можете выбрать по классу:

$(".shapeButton").click(SetShape);

или выберите идентификатор контейнера:

$("#shapeList").click(SetShape);

В любом случае событие будет срабатывать при нажатии на переключатель или ярлык для него, хотя, как ни странно, в последнем случае (выбор по "#shapeList" ), нажатие на метку вызовет функцию щелчка дважды для некоторых причина, по крайней мере, в FireFox; выбор по классу этого не сделает.

SetShape - это функция и выглядит следующим образом:

function SetShape() {
    var Shape = $('.shapeButton:checked').val();
//dostuff
}

Таким образом, вы можете иметь метки на своих кнопках и иметь несколько списков переключателей на одной странице, которые делают разные вещи. Вы даже можете, чтобы каждая отдельная кнопка в том же списке делала разные вещи, настраивая другое поведение в SetShape() на основе значения кнопки.

Ответ 5

это должно быть хорошо

$(document).ready(function() {
    $('input:radio').change(function() {
       alert('ole');
    });
});

Ответ 6

всегда полезно ограничивать поиск DOM. поэтому лучше использовать родителя, чтобы весь DOM не проходил.

ОЧЕНЬ БЫСТРЫЙ

<div id="radioBtnDiv">
  <input name="myButton" type="radio" class="radioClass" value="manual" checked="checked"/>
 <input name="myButton" type="radio" class="radioClass" value="auto" checked="checked"/>
</div>



 $("input[name='myButton']",$('#radioBtnDiv')).change(
    function(e)
    {
        // your stuffs go here
    });