用JQuery 判断某个属性是否存在hasAttr的解决方法

在JQuery编码中,我们会判断元素是否存在某个属性.比如是否包含 class="new" 的样式呢.JQuery判断就非常简单了,因为有 hasClass这个方法 $("input[name=new]").hasClass("new") 即可判断.

但是有时候我们需要判断别的属性,比如有的 a 链接包含 rel 属性,有的没有rel属性.这时该怎么判断呢?

这时就没有现成的方法了. 如果存在某个属性 $("#aid").attr("rel") 会返回 rel的值,如果不存在 rel属性则会返回"undefined"

undefined 就是 undefined类型 , if($("#aid").attr("rel")=="undefined") 这个判断可能不成立.

因为类型不相同.

建议使用 if(typeof($("#aid").attr("rel"))=="undefined") 即可

时间: 2013-04-25

jQuery学习之prop和attr的区别示例介绍

1..prop( propertyName ) 获取匹配集合中第一个元素的Property的值 2. .prop( propertyName, value ) .prop( map ) .prop( propertyName, function(index, oldPropertyValue) ) 给匹配元素集合设定一个或多个属性 .prop()和 .attr()区别 下面是关于jQuery1.6和1.6.1中Attributes模块变化的描述,以及.attr()方法和.prop()方法的首选使

jquery获取自定义属性(attr和prop)实例介绍

$("form").attr("check"); $("form").prop("check"); 两种都可以,不过新版jquery推荐第二种,两个在其他方面都差不多,我发现的唯一不同就是在checkbox上的时候,需要用prop,不然IE浏览器会不兼容 复制代码 代码如下: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat=&

Jquery attr(&quot;checked&quot;) 返回checked或undefined 获取选中失效

假设我们现在需要这样的场景:页面上有一个checkbox,我们期望通过Jquery来获得它是否选中,或者通过Jquery来让它被选中. 在JQ1.6之前的版本,我们会这样写我们的代码: 复制代码 代码如下: <input type='checkbox' id='cb'/> <script> //获取是否选中 var isChecked = $('#cb').attr('checked'); //设置选中 $('#cb').attr('checked',true); </scr

jquery $(this).attr $(this).val方法使用介绍

$(this).attr(key); 获取节点属性名的值,相当于getAttribute(key)方法 $(this).attr(key, value); 设置节点属性的值,相当于setAttribute(key,value)方法 eg:<div id="w_1" class="widget" diywidgetid="${template.diyWidgetId}"></div> var diywidgetid = $(

jquery中prop()方法和attr()方法的区别浅析

jquery1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值. 大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked",比如用attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是un

Jquery下attr和removeAttr的使用方法

下面我们来具体看一下attr的用法: 一.attr(name):取得第一个匹配元素的属性值.通过这个方法可以方便地从第一个匹配元素中获取一个属性的值.如果元素没有相应属性,则返回 undefined .其中name为string.下面我用一个img元素演示一下这种用法: 复制代码 代码如下: //html文件中 <img src="a.gif" /> //我们可以用attr获得img元素的src属性,具体用法如下: $(function(){ var imgSrc = $(

jquery attr方法获取input的checked属性问题

问题:经常使用jQuery插件的attr方法获取checked属性值,获取的值的大小为未定义,此时可以用prop方法获取其真实值,下面介绍这两种方法的区别: 1.通过prop方法获取checked属性,获取的checked返回值为boolean,选中为true,否则为flase 复制代码 代码如下: <input type="checkbox" id="selectAll" onclick="checkAll()">全选 functi

jquery attr()设置和获取属性值实例教程

语法: 1.attr("属性名"): //获取属性的值(取得第一个匹配元素的属性.通过这个方法可以方便的从第一个匹配元素中获取一个属性的值.如果元素没有相应属性,则返回undefined) 2.attr("属性名","属性值"); //设置属性的值(为所有匹配的元素设置一个属性值) 3.attr("属性名","函数值"); //设置属性的函数值(为所有匹配的元素设置一个计算的属性值.不提供值,而是提供一个函

jQuery .attr()和.removeAttr()方法操作元素属性示例

今天主要和大家一起分享一下如何使用jQuery的.attr()和.removeAttr()方法读取,添加,修改,删除元素的属性.大家在平时的Web页面制作中都有碰到如何动态的获取元素的属性和属性值,或者说动态的修改元素的某个(某些)属性的属性值.那么jQuery就可以让我们轻松的读取,添加,更改或删除一个(或多个)元素中的任何属性,在jQuery中我们可以使用下面的方法来实现: 1 .attr():jQuery中的.attr()方法让你能轻松的读取,增加或修改一个元素的属性(详情参考.attr(

jquery 获取自定义属性(attr和prop)的实现代码

1. attr(属性名) //获取属性的值(取得第一个匹配元素的属性值.通过这个方法可以方便地从第一个匹配元素中获取一个属性的值.如果元素没有相应属性,则返回 undefined ) 2. attr(属性名, 属性值) //设置属性的值 (为所有匹配的元素设置一个属性值.) 3. attr(属性名,函数值) //设置属性的函数值 (为所有匹配的元素设置一个计算的属性值.不提供值,而是提供一个函数,由这个函数计算的值作为属性值.) 4.attr(properties) //给指定元素设置多个属性值

jquery 获取 outerHtml 包含当前节点本身的代码

在开发过程中,jQuery.html() 是获取当前节点下的html代码,并不包含当前节点本身的代码,然后我们有时候确需要,找遍jQuery api文档也没有任何方法可以拿到. 看到有的人通过parent().html(),如果当前元素没有兄弟元素还行,如果有那就行不通了.后来实验发现有一个jQuery的一个方法可以解决,而且非常简便,如下: jQuery.prop("outerHTML"); 复制代码 代码如下: <div class="test">&

jquery获取div宽度的实现思路与代码

jquery 获取 DIV的width的语句: 复制代码 代码如下: $("#keleyi_com").width(); 其中keleyi_com为DIV的id. 完整示例代码: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&

JQuery获取或设置ckeditor的数据(示例代码)

从CKEditor取数据时, 复制代码 代码如下: var data_tc = CKEDITOR.instances['txt_editor_tc'].getData(); 向CKEditor设置数据时, 复制代码 代码如下: CKEDITOR.instances['txt_editor_sc'].setData('test'); 这两句代码是在JQuery或者JS时获取CKEditor或设置CKEditor数据时用的.

JQuery获取浏览器窗口内容部分高度的代码

下面是测试代码,记得先引用JQuery库 复制代码 代码如下: <script type="text/javascript"> $(document).ready( function() { var h = $(window).height(); alert(h); } ) </script> Firefox下: IE下: 可以发现它获取的却是是窗口的内容部分高度,而不是浏览器窗口的高度.Oh Yeah!

使用jQuery获取radio/checkbox组的值的代码收集

复制代码 代码如下: <!-- $("document").ready(function(){ $("#btn1").click(function(){ $("[name='checkbox']").attr("checked",'true');//全选 }) $("#btn2").click(function(){ $("[name='checkbox']").removeAtt

JQuery获取文本框中字符长度的代码

趁我写例子这点时间有两个人回答了 呵呵 刚才试验过了 看下例子吧 JS 方法: 复制代码 代码如下: <script type="text/javascript"> // 得到字符串的真实长度(双字节换算为两个单字节) function getStrActualLen(sChars) { //sChars.replace(/[^\x00-\xff]/g,"xx").length/1024+"字节"; //Math.round(sCha

Jquery获取元素的父容器对象示例代码

例:获取id为a的img标签的 $("#a").parent().attr("id");

JQuery 获取json数据$.getJSON方法的实例代码

前台:  复制代码 代码如下: function SelectProject() {            var a = new Array;            var r = window.showModalDialog('SelProject.aspx', a, "dialogWidth=1000px; dialogHeight=600px; resizable: yes");            if (typeof (r) != 'undefined') {