在尝试获取选定的无线电值时获取未定义

时间:2011-07-25 19:59:02

标签: jquery

我有以下代码

<input type="radio" class="radioModal" value="Existing" name="SaveToGallery_rdGallery" id="SaveToGallery_rdGallery">

<input type="radio" class="radioModal" value="New" name="SaveToGallery_rdGallery" id="SaveToGallery_rdNewGallery">

当我试图获取所选的无线电值时,我得到了未定义的

alert($("input[@name='SaveToGallery_rdGallery']:checked").val())

jsfiddle here

http://jsfiddle.net/8F6Uq/

我可以知道我在哪里做错了

有时我得到的价值就像“N”

5 个答案:

答案 0 :(得分:3)

试试这个

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

答案 1 :(得分:2)

在您的示例中,没有选中任何单选按钮。为此,您需要添加checked属性:

<input type="radio" style="vertical-align:top;margin-right:10px;margin-left:0;" class="radioModal" value="New" name="SaveToGallery_rdGallery" id="SaveToGallery_rdNewGallery" checked="checked">

当然,在实际页面中,这将返回用户实际检查的任何单选按钮。

答案 2 :(得分:1)

$('input').change(function(){
    alert($("input[@name='SaveToGallery_rdGallery']:checked").val())
});

因为页面加载时没有选择任何内容。当您绑定change事件然后提醒它时,您可以获得值

答案 3 :(得分:1)

没有检查任何内容。所以没有找到任何元素。

如果选中某个元素,它将起作用:

http://jsfiddle.net/8F6Uq/1/

或添加一些支票:

if ($("input[@name='SaveToGallery_rdGallery']:checked") > 0) {
    // element found
}

答案 4 :(得分:1)

1。检查默认值是否有效!

2。将您的选择器更改为:

alert($("input[name='SaveToGallery_rdGallery']:checked").val())

3。 See it live