Чтобы получить, когда любая кнопка проверена внутри определенного div

0

в соответствии с этой статьей, вызывающей ту же функцию, когда нажата любая кнопка или флажок

Я могу вызвать функцию в любое время.

<script type="text/javascript">

$("input.calc").change(function() {
    calcPrice();
});

function calcPrice(){
    console.log('checked!!'); // note that you missed the quotes here
}
</script>

<input class="calc" type="radio" name="android" value="1">smart
<input class="calc" type="radio" name="android" value="2">tablet
<input class="calc" type="radio" name="android" value="3">both

<input class="calc" type=checkbox name="func" value="0">push
<input class="calc" type=checkbox name="func" value="0">distribute
<input class="calc" type=checkbox name="func" value="0">internationalization

Но теперь я не могу добавить класс 'calc' для каждой строки, но я могу добавить 'calc' на обертку div. (это из-за formbuilder symfony2)

теперь мой код - это.

<div class="calc">
<input  type="radio" name="android" value="1">smart
<input  type="radio" name="android" value="2">tablet
<input  type="radio" name="android" value="3">both
</div>

<div class="calc">
<input  type=checkbox name="func" value="0">push
<input  type=checkbox name="func" value="0">distribute
<input type=checkbox name="func" value="0">internationalization
</div>

Можно ли получить, когда будут нажаты любые кнопки, как раньше?

  • 0
    Переместите ваш скрипт в html для запуска тоже, ваш скрипт не знает об элементах, на которые они пытаются нацелиться
Теги:

4 ответа

1
Лучший ответ

Попробуй это,

$(".calc input[type='radio'], .calc input[type='checkbox'] ").change(function() {
    calcPrice();
});
0

Вы можете использовать

$(".calc :radio, .calc :checkbox").change(calcPrice);
0

Следующий код будет срабатывать всякий раз, когда изменяется вход радио (например, при нажатии). Вы можете легко изменить это, чтобы ссылаться на все входы, а не только на радиокадры, используя input вместо input[type="radio"].

Вы можете получить доступ к отдельному проверенному статусу ввода с помощью this.checked

$('.calc').on('change', 'input[type="radio"]', function(event) {
    if(this.checked) {
        // Input is currently checked.
    }
});
0
$(".calc :radio, .calc :checkbox").change(function() {
calcPrice();
});

function calcPrice(){
console.log('checked!!'); // note that you missed the quotes here
}

Пожалуйста, проверьте этот jsfiddle
кликните сюда

Ещё вопросы

Сообщество Overcoder
Наверх
Меню