2013-10-07 7 views
0

У меня есть код цикла PHP для создания радиокнопок группыполучить значение группы радиокнопок с помощью JQuery

<?php 
for($i=1; $i<=10; $i++) 
{ 
?>   
<div class="radio"> 
    <label> 
     <input name="ans_<?php echo $i?>" value="option2" type="radio"> 
     The smallest resistance 
    </label> 
</div> 
<div class="radio"> 
    <label> 
     <input name="ans_<?php echo $i?>" value="option2" type="radio"> 
     The largest resistance 
    </label> 
</div> 
<div class="radio"> 
    <label> 
     <input name="ans_<?php echo $i?>" value="option2" type="radio"> 
     They have the same power loss. 
    </label> 
</div> 
<div class="radio"> 
    <label> 
     <input name="ans_<?php echo $i?>" value="option2" type="radio"> 
     Voltage and resistance values are needed. 
    </label> 
</div> 
<?php 
} 
?> 
<button id="q_next" type="button" class="btn btn-warning pull-right savebtn" name="1">Save and Next</button> 

, когда мы нажмем на этой кнопке имени атрибут значение увеличивается на 1

Я использую этот атрибут имени, чтобы указать имя переключателя.

Теперь я хочу, чтобы jquery получал значение выбранного радио каждой группы, сгенерированной нажатием кнопки ???

Я попытался это, но он не работает

$('#q_next').click(function() { 
    $quesid=parseInt($(this).attr('name')); 
    $ans=$("input:[name='ans_'"+$quesid+"]").val(); 
}); 
+0

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

+0

Я использую это, но его не работает $ ('# q_next'). Click (function() { \t \t $ quesid = parseInt ($ (this) .attr ('name')) \t \t $ ans = $ ("input: [name = 'ans _'" + $ quesid + "]"). val(); \t }); – atjoshi

ответ

-1

Использование JQuery ...... прошлое ниже код

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script> 
<script> 
    $(document).ready(function(){ 
    $('#q_next').click(function(e){ 
     $("input:radio:checked").each(function() { 
      alert(this.value); 
     }) 
    }); 
}); 
</script> 
+0

Мне не нужен массив, я хочу отдельно значение каждой группы. – atjoshi

+0

ok проверить мой новый обновленный пост ... –

+0

@atjoshi проверить мой код –

1

попробовать что-то вроде этого

var radio_groups = {}; 
$(":radio").each(function(){ 
    radio_groups[this.name] = true; 
}) 

for(group in radio_groups){ 
    var selected = $(":radio[name="+group+"]:checked") 
    if (selected.length > 0) 
     alert('GROUP : '+ group + ',VALUE : '+ selected.val()); 
} 
+0

Но это не означает, что там на той же странице –

+0

проверить отредактированный код –

+0

ваш код также предупреждает предыдущую выбранную опцию – atjoshi

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