jQuery为radio赋值

来源:互联网 发布:大数据 重庆 编辑:程序博客网 时间:2024/05/29 10:11

今天下午遇到的坑,天大的坑啊,表单clear后,radio赋值无效。去除clear后却可。我用的以下方法尝试,都失败。最终问了项目经理,用末尾方法实现了。

以下方法

//取radio的值$("input[name='radioName'][checked]").val(); //给radio 赋值, 选中值为2的radio:$("input[name='radioName'][value=2]").attr("checked",true); 

官方的方法是这样写:

//获取选中值,三种方法都可以:$('input:radio:checked').val();$("input[type='radio']:checked").val();$("input[name='rd']:checked").val();//设置第一个Radio为选中值:    $('input:radio:first').attr('checked', 'checked');//或者$('input:radio:first').attr('checked', 'true');//注:attr("checked",'checked')= attr("checked", 'true')= attr("checked", true)//设置最后一个Radio为选中值:$('input:radio:last').attr('checked', 'checked');//或者$('input:radio:last').attr('checked', 'true');//根据索引值设置任意一个radio为选中值:$('input:radio').eq(索引值).attr('checked', 'true');索引值=0,1,2....//或者$('input:radio').slice(1,2).attr('checked', 'true');//根据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');//删除Value值为rd2的Radio$("input:radio[value=http://www.2cto.com/kf/201110/'rd2']").remove();//删除第几个Radio$("input:radio").eq(索引值).remove();索引值=0,1,2....如删除第3个Radio:$("input:radio").eq(2).remove();//遍历Radio$('input:radio').each(function(index,domEle){     //写入代码});




此方法有效:

$("input[name='GENDER'][value=" + object.GENDER + "]").prop("checked", "checked");//object..是请求得到的数据        $("input[name='MARRIAGE'][value=" + object.MARRIAGE + "]").prop("checked", "checked");        $("input[name='JOBTYPE'][value=" + object.JOBTYPE + "]").prop("checked", "checked");

总结:

  • 对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。
  • 对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法

举一个例子:

<input id="chk1" type="checkbox" />是否可见
<input id="chk2" type="checkbox" checked="checked" />是否可见

像checkbox,radio和select这样的元素,选中属性对应“checked”和“selected”,这些也属于固有属性,因此需要使用prop方法去操作才能获得正确的结果。

$("#chk1").prop("checked") == false$("#chk2").prop("checked") == true

如果上面使用attr方法,则会出现:

$("#chk1").attr("checked") == undefined$("#chk2").attr("checked") == "checked"


原创粉丝点击