当前位置: 代码迷 >> Web前端 >> (转)JQuery操作checkbox、radio等示范
  详细解决方案

(转)JQuery操作checkbox、radio等示范

热度:58   发布时间:2012-10-17 10:25:46.0
(转)JQuery操作checkbox、radio等示例
在html的checkbox里,选中的话会有属性checked="checked"。

如果用一个checkbox被选中,alert这个checkbox的属性"checked"的值alert($"#xxx".attr("checked")),会打印出"true",而不是"checked"!

如果没被选中,打印出的是"undefined"。觉得很奇怪是吗?继续看下去~

不要尝试去做这样的判断:if($"#xxx".attr("checked")=="true")

因为这么做是错的,jQuery的API手册上写,attr(name)的返回值是object。

所以,应该是if($"#xxx".attr("checked")==true)

====================================

jquery全选/取消选择checkbox示例:

<input type="checkbox" name="checkbox_name[]” id=”checkbox_name_1″ />1<br />
<input type=”checkbox” name=”checkbox_name[]” id=”checkbox_name_2″ />2<br />
<input type=”checkbox” name=”checkbox_name[]” id=”checkbox_name_3″ />3<br />
<input type=”checkbox” name=”checkbox_name[]” id=”checkbox_name_4″ />4<br />
<input type=”checkbox” name=”checkedAll” id=”checkedAll”/>全选/取消全选

   1. <script type="text/javascript">
   2. <!--
   3. $(function() {
   4. $("#checkedAll").click(function() {
   5. if ($(this).attr("checked") == true) { // 全选
   6.    $("input[@name='checkbox_name[]']").each(function() {
   7.    $(this).attr("checked", true);
   8.   });
   9. } else { // 取消全选
  10.    $("input[@name='checkbox_name[]']").each(function() {
  11.    $(this).attr("checked", false);
  12.   });
  13. }
  14. });
  15. });
  16. //-->
  17. </script>
      ------------------------

$("#checkedAll").click(function() {
#    $("input[@name='checkbox_name[]']").each(function() {
#        var ckif = $("#checkedAll").get(0).checked;
#       $(this).attr("checked", ckif);
#   });

}

}

}

这样写估计好点

=================================================
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();//清空下拉框
  相关解决方案