jQuery选择表单单选按钮
Posted
技术标签:
【中文标题】jQuery选择表单单选按钮【英文标题】:jQuery selecting a forms radio buttons 【发布时间】:2011-08-31 20:04:38 【问题描述】:我有一个表单,我使用这个document.forms["form-0"].answerN[0];
来选择一个特定的单选按钮,但是我无法使用 jQuery 来做到这一点。
我尝试使用$('forms["form-0"]')
和$('forms[0]')
获取表单,但没有成功,而且两者都使用长路径工作..
【问题讨论】:
【参考方案1】:你可以这样访问(jQuery v1.6)
$('form > input:radio').prop('id');
DEMO
更新
您可以通过name
或id
属性访问form,也可以这样
$('form[name="firstForm"] > input:radio').prop('id');
DEMO
【讨论】:
感谢演示,但有没有办法将它与表单 ID 或名称一起使用?它尝试了$('form-0 > input:radio').prop('id');
$('forms[0] > input:radio').prop('id');
$('"form-0" > input:radio').prop('id');
并且没有工作......
显然您可以使用name
和id
等形式。查看我的更新答案:)
您也可以通过$("form").eq(0)
访问第一个表单
您可以通过索引访问表单$("form").eq(1).find('input:radio').prop('id');
// 将访问第二个表单,因为索引从 0 开始,请参见此处:jsfiddle.net/xkeshav/ZF27B/5【参考方案2】:
试试这样:$("form input:radio")
如需进一步帮助,请关注this 链接。
【讨论】:
有没有办法使用表单 ID/名称而不仅仅是form
?
@IlyaD $("#formId input:radio:")
应该这样做。【参考方案3】:
如果你有这样的表格:
<form action="" method="post" id="myForm">
<input type="radio" name="myRadioButton" value="0" class="radio" id="firstRadioButton" /> Value
</form>
您可以通过 id 选择元素:
选择单选按钮
$("#firstRadioButton)
选择表格
$("#myForm")
或选择所有单选按钮:
$("#myForm input.radio").each(function()
alert($(this).val());
);
并且不使用 ID:
html:
<form action="" method="post">
<input type="radio" value="1" /> Value 1 <br />
<input type="radio" value="2" /> Value 2 <br />
</form>
jQuery:
alert($("form").first().find("input:radio").first().val());
例子:看here
【讨论】:
thanx,这是一个很好的解决方案,使用 ID,但是没有办法在不使用 ID 的情况下缩短document.forms["form-0"].answerN[0]
吗?似乎所有其他答案都使代码更长...【参考方案4】:
form-0 是表单的名称。你必须写类似的东西
$('form[name=form-0]') 选择表格。要获得单选按钮,您必须进一步移动才能使用儿童
所以
$('form[name=form-0]').children('radio[name=answerN]:first-child')希望这应该可行
【讨论】:
你不知道在他的代码中是否会成为孩子或成为后代,所以你应该使用“find()”而不是“children()”$("form[name=' form-0']").find(":radio[name='answerN']") 也写"
,比如name="form-o"
和name="answerN"
【参考方案5】:
您可以尝试这样做以访问页面中的所有表单:
$('forms').each(function(id) 控制台.log(id,$(this)); );【讨论】:
以上是关于jQuery选择表单单选按钮的主要内容,如果未能解决你的问题,请参考以下文章