jQuery获取radio选中后的文字

原文链接:http://blog.csdn.net/zhanyouwen/article/details/51393216

jQuery获取radio选中后的文字
转载 2016年05月13日 10:32:14 标签:jQuery获取radio选中后的文字 850
 HTML 示例如下:


[html] view plain copy
<input type="radio" id="male" name="sex" value="1" />男  <input type="radio" id="female" name="sex" value="2" />女    
在这里直接给出 jQuery 获取 radio 选中后的文本的方法,如下:

[html] view plain copy
$("input[name='sex']:checked")[0].nextSibling.nodeValue;    
方法将 jQuery 对象转换为 DOM 对象后,再使用原生的 javascript 方法获取文本。在我回复朋友前,他通过在 radio 后添加 span 标记来解决这个问题:

[html] view plain copy
<input type="radio" id="male" name="sex" value="1" /><span>男</span>    
接来下获取时使用 next() 选择器,如下:

[html] view plain copy
$("input[name='sex']:checked").next("span").text();  
问题看似到这里就结束了,其实不然,这并不是好的用户体验。好的做法应该为 radio 添加 for 标记,这样在点击 radio 文本"男"或"女"的时候也能选中 radio,这比让用户点击一个小圆圈容易多了。所以最好的 HTML 标记应该如下:

[html] view plain copy
<input type="radio" id="male" name="sex" value="1" />  <label for="male">男</label>  <input type="radio" id="female" name="sex" value="2" />  <label for="female">女</label>    
最后获取 radio 选中后的文本我相信你已经会了,如下:

[html] view plain copy
$("input[name='sex']:checked").next("label").text();  
这样使用 jQuery 成功获取了 radio 选中后的文本,这里主要是指最后一个方法。本篇内容虽然简单,但着重说明了一个道理——细节决定成败!

原文地址:https://www.cnblogs.com/libin6505/p/8431293.html