jquery对象控制type=radio的input问题解决方法:
2015-02-09 12:22
405 查看
前提:
需求:
界面上左边通过ajax获取消息列表,点击消息,右边呈现消息的具体信息,其中包括消息类型(自动发送还是手动发送,数据库保存的是AUTOMATIC和MANUAL)
$(":radio[name='messageType']").removeAttr("checked");
$(":radio[name='messageType'][value='" + message.type.toLowerCase() + "']").attr("checked", true);
通过firdebug调试发现html中显示是没有问题的,但是没有赋值到radio.
解决思路:
//注意:这里用jquery控制radio会有问题,要使用js去做控制,如何将jquery对象转换为js对象.
//两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index);
//jQuery对象转换为DOM对象.
//(1)jQuery对象是一个数据对象,可以通过[index]的方法来得到相应的DOM对象.
//如:var $v =$("#v"); //jQuery对象
//var v=$v[0]; //DOM对象
//alert(v.checked) //检测这个checkbox是否被选中
//(2)jQuery本身提供通过.get(index)方法得到相应的DOM对象.
//如:var $v=$("#v"); //jQuery对象
//var v=$v.get(0); //DOM对象
//alert(v.checked) //检测这个checkbox是否被选中
//DOM对象转成jQuery对象:
//对于已经是一个DOM对象,只需要用$()把DOM对象包装起来就可以获得一个jQuery对象,$(DOM对象).
//如:var v=document.getElementById("v"); //DOM对象
//var $v=$(v); //jQuery对象
//转换后,就可以任意使用jQuery的方法了。
//通过以上方法可以任意的相互转换jQuery对象和DOM对象.
//需要再强调注意的是:DOM对象才能使用DOM中的方法,jQuery对象是不可以用DOM中的方法.
解决方案:
$(":radio[name='messageType'][value='" + message.type.toLowerCase() + "']")[0].checked = true;
或
$(":radio[name='messageType'][value='" + message.type.toLowerCase() + "']").get(0).checked = true;
<span style="white-space:pre"> </span><div> <span style="white-space:pre"> </span><input type="radio" name="messageType" value="automatic"/>自动发送 <input type="radio" name="messageType" value="manual"/>手动发送 </div>
需求:
界面上左边通过ajax获取消息列表,点击消息,右边呈现消息的具体信息,其中包括消息类型(自动发送还是手动发送,数据库保存的是AUTOMATIC和MANUAL)
$(":radio[name='messageType']").removeAttr("checked");
$(":radio[name='messageType'][value='" + message.type.toLowerCase() + "']").attr("checked", true);
通过firdebug调试发现html中显示是没有问题的,但是没有赋值到radio.
解决思路:
//注意:这里用jquery控制radio会有问题,要使用js去做控制,如何将jquery对象转换为js对象.
//两种转换方式将一个jQuery对象转换成DOM对象:[index]和.get(index);
//jQuery对象转换为DOM对象.
//(1)jQuery对象是一个数据对象,可以通过[index]的方法来得到相应的DOM对象.
//如:var $v =$("#v"); //jQuery对象
//var v=$v[0]; //DOM对象
//alert(v.checked) //检测这个checkbox是否被选中
//(2)jQuery本身提供通过.get(index)方法得到相应的DOM对象.
//如:var $v=$("#v"); //jQuery对象
//var v=$v.get(0); //DOM对象
//alert(v.checked) //检测这个checkbox是否被选中
//DOM对象转成jQuery对象:
//对于已经是一个DOM对象,只需要用$()把DOM对象包装起来就可以获得一个jQuery对象,$(DOM对象).
//如:var v=document.getElementById("v"); //DOM对象
//var $v=$(v); //jQuery对象
//转换后,就可以任意使用jQuery的方法了。
//通过以上方法可以任意的相互转换jQuery对象和DOM对象.
//需要再强调注意的是:DOM对象才能使用DOM中的方法,jQuery对象是不可以用DOM中的方法.
解决方案:
$(":radio[name='messageType'][value='" + message.type.toLowerCase() + "']")[0].checked = true;
或
$(":radio[name='messageType'][value='" + message.type.toLowerCase() + "']").get(0).checked = true;
相关文章推荐
- C#中??和?分别是什么意思? 在ASP.NET开发中一些单词的标准缩写 C#SESSION丢失问题的解决办法 在C#中INTERFACE与ABSTRACT CLASS的区别 SQL命令语句小技巧 JQUERY判断CHECKBOX是否选中三种方法 JS中!=、==、!==、===的用法和区别 在对象比较中,对象相等和对象一致分别指的是什么?
- 解决input type=radio 不能单选问题
- .net 2.0 中对于非服务器端的input元素 type为file后台无法获取的问题的解决方法
- jQuery对象和DOM对象转换,解决jQuery对象不能使用js方法的问题
- TypeError: Error #1009: 无法访问空对象引用的属性或方法。(解决)
- Error #1009: 无法访问空对象引用的属性或方法 --问过的个问题 解决了 记录下
- JQuery选取器与其它JS框架冲突的解决方法 确保jQuery不会与其他库的$对象发生冲突
- InputCalendar的问题解决方法
- "解决方案可能受源代码管理器控制..MSSCCPRJ.SCC.."问题及其解决方法
- 测试JQuery中常用的取值方法 包含(input areatext select checkbox radio )
- 关于数据库对象所有者非dbo时的可能造成的问题及解决方法
- .Net反射技术应用解决对象不同版本方法不同参数的问题
- jquery 1.3.2 IE8中的一点点的小问题解决方法
- 解决ajax的Type,Sys未定义问题的方法
- 农行动态口令卡问题解决方案(Key:Vista,IE7,证书已锁定,438对象不支持此属性或方法)
- 讲解数据库孤立用户和对象名无效问题的解决方法(转载)
- .Net反射技术应用解决对象不同版本方法不同参数的问题
- 关于动态控制 input type="image"对象
- 解决ASP.NET中Type.GetType方法总返回空的问题
- 关于JQuery的serialize方法.让我崩溃一天的问题解决了