2

我使用星级http://www.fyneworks.com/jquery/star-rating/

我不明白如何在提交表单后获取用户检查的隐藏收音机的值

这里的代码:

         <div class="line mrgT mrgB" id="starVin">
            <input name="star1" type="radio" class="star" value="1" />
            <input name="star1" type="radio" class="star" value="2" />
            <input name="star1" type="radio" class="star" value="3" />
            <input name="star1" type="radio" class="star" value="4" />
            <input name="star1" type="radio" class="star" value="5" />
        </div>

我试试这个

alert( $('#formComent .star1:checked').val() );

不工作...

4

3 回答 3

5

您将需要[name="star1"]在选择器中使用,因为它是名称,或者.star因为它是类,而不是star1. 您的 表单上可能有一个 ID formComment,但由于它不包含在您的示例中,因此也可以starVin在选择器中使用:

jQuery.noConflict();
alert( jQuery('#starVin input[name="star1"]:checked').val() );

或者

alert( jQuery('#starVin .star:checked').val() );

http://jsfiddle.net/tayNH/

如果你想测试checked你可以使用以下is()方法:

$('#starVin input[name="star1"]').each(function(){ alert($(this).is(':checked')); });
于 2012-10-26T14:54:13.847 回答
0

根据您的标记,我认为您想要$('#starVin input[name="star1"].star:checked').val()(将容器 div 的 id 从 '#formComent' 更改为 '#starVin',添加名称特异性 '[name="star1"]' 并将 ':checked' 过滤器移动到选择器中,然后获取价值。

有关工作示例,请参阅我的 jsfiddle

于 2012-10-26T15:06:25.680 回答
0

如果有评级星,作为单选按钮,要获取该评级星的值,我编写了以下代码。它对我来说很好。这是我的 html 和 jquery 代码。

<fieldset class="rating">
    <input type="radio" class="get_value" id="star5" name="rating" value="5" /><label class = "full" for="star5" title="Awesome - 5 stars"></label>
    <input type="radio" class="get_value" id="star4half" name="rating" value="4 and a half" /><label class="half" for="star4half" title="Pretty good - 4.5 stars"></label>
    <input type="radio" class="get_value" id="star4" name="rating" value="4" /><label class = "full" for="star4" title="Pretty good - 4 stars"></label>
    <input type="radio" class="get_value"id="star3half" name="rating" value="3 and a half" /><label class="half" for="star3half" title="Meh - 3.5 stars"></label>
    <input type="radio" class="get_value" id="star3" name="rating" value="3" /><label class = "full" for="star3" title="Meh - 3 stars"></label>
    <input type="radio" class="get_value" id="star2half" name="rating" value="2 and a half" /><label class="half" for="star2half" title="Kinda bad - 2.5 stars"></label>
    <input type="radio" class="get_value" id="star2" name="rating" value="2" /><label class = "full" for="star2" title="Kinda bad - 2 stars"></label>
    <input type="radio" class="get_value" id="star1half" name="rating" value="1 and a half" /><label class="half" for="star1half" title="Meh - 1.5 stars"></label>
    <input type="radio" class="get_value" id="star1" name="rating" value="1" /><label class = "full" for="star1" title="Sucks big time - 1 star"></label>
    <input type="radio" class="get_value" id="starhalf" name="rating" value="half" /><label class="half" for="starhalf" title="Sucks big time - 0.5 stars"></label>
</fieldset>

<script>
var star_rating = 0;
$(".get_value").click(function () {
    if($(this).prop("checked")) {
        star_rating = $(this).val();
        console.log(star_rating);
    }
});
</script>
于 2018-03-19T11:49:07.100 回答