jquery获取radio值求教
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery获取radio值求教相关的知识,希望对你有一定的参考价值。
在一个页面下有多个text以及radio供用户填写以及选择,用户选择并点击提交后通过ajax传输,小弟我是通过$(':input').each()遍历这个页面下的所有input,然后将数据序列化成json格式传输,求教高手如何剔除这中间的没有被选中的radio值?
很多种方式可以得到。1、
$(':input:radio')取到所有的radio,然后each遍历,通过$(this).is(':checked')判断是否选中。
2、
$(':input:radio:checked')可以取到所有的选中的radio,然后遍历取值。
3、其实这种方法最简单,需要将的所有输入组件放到<form id="myform">表单中
var str = $('#myform').formSerialize();就会直接将表单中的信息变为xxx=value1&yyy=values&....这种形式了。
注意在新版本的JQuery库中formSerialize函数被改成了统一的serialize函数了。注意你的JQuery版本。追问
那我应该把text和radio分开取值然后再合并吗?我是用:input直接取得所有文本框,然后在循环里判断当前指针下的input是不是radio类型的,且有没有checked,不过经过反复尝试都没弄明白...
追答你可以把你要收集数据的input和radio都放到一个中,直接一次就直接变成你要的字符串了。但是你需要为你的input和radio组件加name属性。它生成的字符串就是所有form中的组件的name=用户操作的值
追问用serialize序列换的数据能转换成json格式吗?
追答你服务器一侧要Ajax格式?你服务器端用啥技术啊?提交字符串格式服务器端取值方便啊!~服务器返回数据给客户端用Json方便。
追问采用人家的程序做扩展,对方要求是统一用json格式的交互,我也没法子,这问题困扰我一晚上了
追答那你就用
$('#myform').ajaxForm(
 url:'提交的url地址例如aaa.do',
type:'post',
dataType:'json',
success:function(data)
//回调函数
);
这个函数可以将表单中的数据自动以JSON格式提交给服务器端。也很方便的。关键不理解服务器端用JSON真的不如字符串方便。
我现在主要的问题就是radio的取值问题,直接:input全取就无法剔除没被选中的radio,我先试着把text和radio分开,再合并看看..
追答你服务器端要什么格式的
xxx:value,xxx:value,xxx:value.....,如果是这个格式,ajaxForm就可以。
把格式说一下。
array:id:1,name:2,money:3 这样的形式,格式什么的都没问题,就卡在radio无法正确取值了
追答那你就用$(':input:radio:checked')取到后拼串吧。
参考技术A $("input[selected='selected']").each()jQuery选择器中:id选择器用"#"、class选择器用"."、标签选择器直接用标签名称;要选择指定属性值的标签就使用"input[selected='selected']"这样的选择器。追问
我只做到了遍历所有的input,并将其值保存到一个类数组里,自己也试着去获取被选中的radio的值,可惜怎么搞也是全部获取了,所以只能回到了起初的样子,代码片段如下
$(':input').each(function(i, v)
var n = $(v).attr('name');
if(n == 'save') return false;;
data[n] = $(v).val();
);
同意下面同学给出的答案!很全面,我把radio选中的参数checked弄错了。
jquery怎么获取radio的值
实例1:
获取一组单选按钮对象:var obj_payPlatform = $('#wrap input[name="payMethod"]');
获取被选中按钮的值 :var val_payPlatform = $('#wrap input[name="payMethod"]:checked ').val();
实例2:
使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以下的一些radio项:
获取某个radio的值的代码如下:
遍历name为testradio的所有radio代码如下:
取具体某个radio的值,比如第二个radio的值,代码如下:
参考技术A1.获取选中值,三种方法都可以:
$('input:radio:checked').val();
$("input[type='radio']:checked").val();
$("input[name='rd']:checked").val();
2.设置第一个Radio为选中值:
$('input:radio:first').attr('checked', 'checked');
或者
$('input:radio:first').attr('checked', 'true');
注:attr("checked",'checked')= attr("checked", 'true')= attr("checked", true)
3.设置最后一个Radio为选中值:
$('input:radio:last').attr('checked', 'checked');
或者
$('input:radio:last').attr('checked', 'true');
4.根据索引值设置任意一个radio为选中值:
$('input:radio').eq(索引值).attr('checked', 'true');索引值=0,1,2....
或者
$('input:radio').slice(1,2).attr('checked', 'true');
5.根据Value值设置Radio为选中值
$("input:radio[value=http://www.2cto.com/kf/201110/'rd2']").attr('checked','true');
或者
$("input[value=http://www.2cto.com/kf/201110/'rd2']").attr('checked','true');
参考技术B 使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以下的一些radio项:1.<input type="radio" name="testradio" value="jquery获取radio的值" />jquery获取radio的值
2.<input type="radio" name="testradio" value="jquery获取checkbox的值" />jquery获取checkbox的值
3.<input type="radio" name="testradio" value="jquery获取select的值" />jquery获取select的值
1.$('input[name="testradio"]:checked').val();2、
1.$('input:radio:checked').val();3、
1.$('input[@name="testradio"][checked]');4、
1.$('input[name="testradio"]').filter(':checked');差不多挺全的了,如果我们要遍历name为testradio的所有radio呢,代码如下
1.$('input[name="testradio"]').each(function()2.alert(this.value);3.);如果要取具体某个radio的值,比如第二个radio的值,这样写
1.$('input[name="testradio"]:eq(1)').val()
jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设计和Ajax交互。 参考技术C 使用jquery获取radio的值,最重要的是掌握jquery选择器的使用,在一个表单中我们通常是要获取被选中的那个radio项的值,所以要加checked来筛选,比如有以下的一些radio项:
1.<input type="radio" name="testradio" value="jquery获取radio的值" />jquery获取radio的值
2.<input type="radio" name="testradio" value="jquery获取checkbox的值" />jquery获取checkbox的值
3.<input type="radio" name="testradio" value="jquery获取select的值" />jquery获取select的值
要想获取某个radio的值有以下的几种方法,直接给出代码:
1、
1.$('input[name="testradio"]:checked').val();2、
1.$('input:radio:checked').val();3、
1.$('input[@name="testradio"][checked]');4、
1.$('input[name="testradio"]').filter(':checked');差不多挺全的了,如果我们要遍历name为testradio的所有radio呢,代码如下
1.$('input[name="testradio"]').each(function()2.alert(this.value);3.);如果要取具体某个radio的值,比如第二个radio的值,这样写
1.$('input[name="testradio"]:eq(1)').val()本回答被提问者采纳 参考技术D 给radio标签一个id属性 id="rdo1"
$("#rdo1").val();
这样就取到了
以上是关于jquery获取radio值求教的主要内容,如果未能解决你的问题,请参考以下文章
JQuery 之 获取 radio选中值,select选中值