当前访客身份:游客 [ 登录 | 加入 OSCHINA ]

代码分享

当前位置:
代码分享 » JavaScript  » 网页设计与交互
分享到: 
收藏 +0
4
<无详细内容>
标签: jQuery

代码片段(1) [全屏查看所有代码]

1. [代码][JavaScript]代码     跳至 [1] [全屏预览]

jquery取radio单选按钮的值  

$("input[name='items']:checked").val();  
另:判断radio是否选中并取得选中的值 

如下所示: 
function checkradio(){ 
var item = $(":radio:checked"); 
var len=item.length; 
if(len>0){ 
  alert("yes--选中的值为:"+$(":radio:checked").val()); 
} 
} 




 jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关   

 获取一组radio被选中项的值   

 var item = $('input[name=items][checked]').val();   

 获取select被选中项的文本   

 var item = $("select[name=items] option[selected]").text();   

 select下拉框的第二个元素为当前选中值   

 $('#select_id')[0].selectedIndex = 1;   

 radio单选组的第二个元素为当前选中值   

 $('input[name=items]').get(1).checked = true;  

    
 获取值:  

  

 文本框,文本区域:$("#txt").attr("value");   

 多选框checkbox:$("#checkbox_id").attr("value");   

 单选组radio: $("input[type=radio][checked]").val();   

 下拉框select: $('#sel').val();  

    

 控制表单元素:   

 文本框,文本区域:$("#txt").attr("value",'');//清空内容   

$("#txt").attr("value",'11');//填充内容  

   
 多选框checkbox: $("#chk1").attr("checked",'');//不打勾   

 $("#chk2").attr("checked",true);//打勾   

 if($("#chk1").attr('checked')==undefined) //判断是否已经打勾  

    

 单选组radio: $("input[type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项   

 下拉框select: $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项   

 $("<option value='1'>1111</option><option value='2'>2222</option>").appendTo("#sel")//添加下拉框的option   

$("#sel").empty();//清空下拉框  

    

 刚开始接触jquery,很多东西不熟悉   

 在用$("#id")来获得页面的input元素的时候,发现$("#id").value不能取到值  

   

 后来终于在伟大的百度帮助下,找到了问题的原因:   

 $("")是一个jquery对象,而不是一个dom element  

    

 value是dom element的属性  

  

 jquery与之对应的是val  

   
 val() :获得第一个匹配元素的当前值。  

  

 val(val):设置每一个匹配元素的值。  

   

 所以,代码应该这样写:  

   
 取值:val = $("#id")[0].value;   
 赋值:  $("#id")[0].value = "new value";   

 或者$("#id").val("new value");  

   

 或者这样也可以:val = $("#id").attr("value"); 



jQuery中each非常好用,常用它取代javascript的for循环 

例如在一个function里有一个each,在each里某种条件 成立的话,就把这个function返回true或者false 

function methodone(){ 
.... 
$.each(array,function(){ 
if(条件成立){ 
return true; 
} 
}); 
.... 
} 

结果发现老是不对。 

后来查找资料才发现,在each代码块内不能使用break和continue,要实现break和continue的功能的话,要使用其它的方式 
break----用return false; 
continue --用return ture; 

所以当我在each里想使用return true给这个function返回时,其实只是让each继续执行而以 
连each都没有中断,所以function也就不能return了  

另:判断radio是否选中并取得选中的值 

如下所示: 
function checkradio(){ 
var item = $(":radio:checked"); 
var len=item.length; 
if(len>0){ 
  alert("yes--选中的值为:"+$(":radio:checked").val()); 
} 
} 



开源中国-程序员在线工具:Git代码托管 API文档大全(120+) JS在线编辑演示 二维码 更多»

发表评论 回到顶部 网友评论(11)

  • 1楼:剑静 发表于 2012-03-20 19:10 回复此评论
  • 2楼:SZL 发表于 2013-07-04 14:27 回复此评论
    好东西
  • 3楼:aqia358 发表于 2013-09-10 15:59 回复此评论
    不错的东西
  • 4楼:水牛叔叔 发表于 2013-10-25 16:00 回复此评论
    获取一组radio被选中项的值  
    021  
    022  var item = $('input[name=items][checked]').val();  

    这个有问题应该这样写:
    var item = $('input:radio[name=items][checked]').val();  

  • 5楼:李世晨 发表于 2014-02-19 17:35 回复此评论
    good
  • 6楼:大羽飞鹤 发表于 2014-03-24 13:51 回复此评论
    学习了
  • 7楼:_wq 发表于 2014-08-11 21:27 回复此评论
    if($("#chk1").attr('checked')==undefined)//判断是否已经打勾 

    --
    这个可以这样if($("#chk1").is(":checked")){ ... }
  • 8楼:程序猿阿涛 发表于 2014-09-10 12:25 回复此评论
    谢谢分享,收藏以后查阅。
  • 9楼:2292861620 发表于 2014-09-15 22:41 回复此评论
    有人能帮忙吗。我不需要提交和跳转。该怎么将select的值传给后台的当前页面呢,目的是想改变sql后面的order by 变量 desc。而获得新的排序。再就是网站是ASP语言。用伪静态呈现的
  • 10楼:修改性别 发表于 2014-09-18 16:07 回复此评论
    ghjgjgj
  • 11楼:久飞WEB 发表于 2015-04-12 21:51 回复此评论
    总结的还是不错的。
开源从代码分享开始 分享代码