HTML:利用data自定义属性进行传值

data-* 属性用于存储私有页面后应用的自定义数据,可以在所有的 HTML 元素中嵌入数据。

自定义的数据可以让页面拥有更好的交互体验(不需要使用 Ajax 或去服务端查询数据)。

data-* 属性由以下两部分组成:

  1. 属性名不要包含大写字母,在 data- 后必须至少有一个字符。
  2. 该属性可以是任何字符串

注意: 自定义属性前缀 "data-" 会被客户端忽略。

语法:<element data-*="somevalue">

 

为一个元素分配data属性存储数据

  <div class="open"  data-id="1"></div>

在js中设置和获取

var open = document.getElementsByClassName('open');

open.dataset.id = '1';//设置

open.onclick = function () {

        alert(this.dataset.id);//获取

    }

在jq中设置和获取

  $('.open').click(function () {
        var name = $(this).data("name","word")//设置

        var id = $(this).attr("data-id")//获取

        //或者 var id = $(this).data('id')

        console.log(id)
    })

在jq中设置也可以把一个包含键/值对的对象,向被选元素添加数据 (在元素data-*属性中设置json数据时,需要注意单双引号,否则可能出现undefined的,获取不到数据,正确的做法是用双引号。)

dom.data('setObj', JSON.stringify({'name': 'william', 'age': 22}))

取的时候,只需要

var obj = dom.data('setObj') 

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值