radio is only passing the first value

Possible Duplicate:
How can I get which radio is selected via jQuery?

I am attempting to put a user rating system on my site but only the first value gets passed on, so in the table the rating column is always a one. Its been a while since I have worked with radios.

Here is what I have.

    <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>

Try chaging this :

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

into this:

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

您需要选择所选的无线电元件,如下所示:

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

It looks like the problem is with your jQuery selector. It's not specifying to grab the value of the "checked" radio button. Try this when loading up your movie_rating_s variable:

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

链接地址: http://www.djcxy.com/p/24584.html

上一篇: 如何提醒jQuery中定义的函数

下一篇: 无线电只是传递第一个值