2012-04-25 19 views
0

Можно создать дубликат:
How can I get which radio is selected via jQuery?радио только проходит первое значение

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

Вот что у меня есть.

<form id="add-rateing"> 
<input type="radio" name="MOVIE_RATING" value="1" > 1 
<input type="radio" name="MOVIE_RATING" value="2" > 2 
<input type="radio" name="MOVIE_RATING" value="3" checked="yes"> 3 
<input type="radio" name="MOVIE_RATING" value="4" > 4 
<input type="radio" name="MOVIE_RATING" value="5" > 5 <br> 
<input type="hidden" name="MOVIE_ID" value="<?php echo $id; ?>"> 
<input type="hidden" name="MOVIE_TITLE" value="<?php echo $title; ?>"> 
<input type="hidden" name="USER_ID" value="<?php echo $loggedinusername; ?>"> 
<input type="submit" value="I Drank To The Credits" onclick="$('#add-rateing').hide('fast')"> 
</form> 
<script type="text/javascript"> 
$("#add-rateing").submit(function(event){ 
event.preventDefault() 

addrateing(); 

}); 

function addrateing() 
{ 
var movie_rating_s = $("#add-rateing [name='MOVIE_RATING']").val(); 
var movie_id_s = $("#add-rateing [name='MOVIE_ID']").val(); 
var movie_title_s = $("#add-rateing [name='MOVIE_TITLE']").val(); 
var user_id_s = $("#add-rateing [name='USER_ID']").val(); 
var errors = ''; 

$.ajax({ 
type : "POST", 
url  : "movie_watched.php", 
data : { rating: movie_rating_s, 
      movie : movie_id_s, 
     title: movie_title_s, 
      user : user_id_s, }, 

cache : false, timeout: 10000, 

success : function() { 
    alert("You have played <?php echo $title; ?> "); 

}, 
error : function() { 
    alert("there is a problom"); 
}, 
complete : function() { 
} 

}); 
}; 
</script> 
+0

'вара movie_rating_s = $ (" # добавить -rateing [name = 'MOVIE_RATING'] [checked = 'yes' "). val();' – Musa

+0

Рассмотрите возможность использования плагина jquery form (http://jquery.malsup.com/form/). Он заботится о правильной сериализации вашей формы. – ThiefMaster

+0

Вы должны правильно исправить «скорость». Это правильно написано «рейтинг». –

ответ

2

Try chaging это:

var movie_rating_s = $("#add-rateing [name='MOVIE_RATING']").val(); 

в этом:

var movie_rating_s = $("#add-rateing [name='MOVIE_RATING']:checked").val(); 
+0

отлично поработал. – terry

0

Вы должны выбрать выбранный элемент радио, например, так:

$('input[name="MOVIE_RATING"]:checked').val(); 
0

Похоже проблема связана с вашим селектором jQuery. Он не указывает на захват значения «проверенного» переключателя. Попробуйте при загрузке вашего movie_rating_s переменного:

вар movie_rating_s = $ ("# надстройка rateing [имя = 'MOVIE_RATING']: проверено"). Val()

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