div是没有value属性的,但是我们可以给它加上去也是可以获得的,在这里value只是一个自定义参数。
html代码
<div class="store" value="tanyu"></div>
jq代码
$(function(){
$("store")click(function(){
alert($(this)attr('value'));
});
});
jQuery获取方法
data()方法
//HTML代码 <div id="myDiv" data-appid="123" data-myname="lsxj" data-app-id="456" data-my-name="secondname"></div>
//获取属性
var appid = $("#myDiv")data("appid"); //123
var app-id = $("#myDiv")data("app-id"); //456
//属性赋值 $("#myDiv")data("appid","666");
//最终HTML代码 <div id="myDiv" data-appid="123" data-myname="lsxj" data-app-id="456" data-my-name="secondname"></div>
需要注意的是,data()的值进行修改并不会影响到DOM元素上的data-属性的改变。data()的本质其实是将一个 “cache” 附加到了对象上,并使用了一个特殊的属性名称。
所以上述代码中,虽然对div进行了data()赋值 *** 作,但HTML代码中div的data-appid的值仍然为123,因为data()只是修改了缓存的那个值,此时进行$('#myDiv')data("appid")的 *** 作,输出的结果为666
js获取data-的方式
通过dataset属性访问
//HTML代码
<div id="myDiv" data-appid="123" data-myname="lsxj"></div>
//js代码
var div = documentgetElementById("myDiv");
var appId = divdatasetappid;//获取data-appid的值
var myName = divdatasetmyname;//获取data-myname的值
//设置值
divdatasetappid = 456;
divdatasetmyname = "newname";
//最终HTML结果
<div id="myDiv" data-appid="456" data-myname="newname"></div>
dataset属性的值是DOMStringMap的一个实例,名值对的映射。每个data-name形式的属性都有一个对应的属性,只不过该属性名没有data-前缀。
兼容性:
需要注意的是,dataset中大小写的问题。带连字符连接的名称在使用的时候需要命名驼峰化。例如data-my-name对应的是datasetmyName的值。可看以下代码
//将上面代码的设置值部分进行修改divdatasetappId = 789;
divdatasetmyName = "secondname";
//最终结果
<div id="myDiv" data-appid="123" data-myname="lsxj" data-app-id="456" data-my-name="secondname"></div>
什么是outerHTML
outerHTML,中文意为图例分析,用于获取元素内的html内容和文本。
与JQ的$()html()所不同的是,jQueryhtml() 是获取当前节点下的html代码,并不包含当前节点本身的代码。而outerHTML则包含本身的代码
例HTML:
<p id="testid"><span>这是一段Html代码</span></p>它的html()为:
<span>这是一段Html代码</span>而有时候回需要包含当前节点的代码,所以就用到了outerHTML,也就是
<p id="testid"><span>这是一段Html代码</span></p>如何使用jQuery获取outerHTML
原生的JS Dom中有一个内置属性叫做:outerHTML (注意大小写敏感)获取包含当前节点的HTML代码。所以可以用JQ中的prop()获取,以上文代码为例
$('#testid')prop("outerHTML")完整代码示例
<script src="<p id="testid"><span>这是一段Html代码</span></p>
<script type="text/javascript">
consolelog("节点内的HTML代码\n"+$('#testid')html());
consolelog("包含节点的HTML代码\n"+$('#testid')prop("outerHTML"));
</script>
以上就是关于jQuery如何获取点击div的属性值全部的内容,包括:jQuery如何获取点击div的属性值、jquery怎么获得元素data属性值、怎样用jQuery自带方法/函数来获取outerHTML属性等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)