event.currentTarget.dataset怎么用
时间: 2024-05-15 09:18:21 浏览: 9
event.currentTarget.dataset可以用于获取触发当前事件的元素(即事件绑定的元素)的自定义数据属性。例如,在HTML元素中设置了一个data-id的属性,可以使用event.currentTarget.dataset.id来获取该属性的值。代码示例:
HTML代码:
```html
<button data-id="123" onclick="handleClick(event)">点击</button>
```
JavaScript代码:
```javascript
function handleClick(event) {
const id = event.currentTarget.dataset.id;
console.log(id); // 输出:123
}
```
在上面的示例中,当点击按钮时,handleClick函数会被调用,并将事件对象event作为参数传递进去。在函数中,我们通过event.currentTarget.dataset.id获取了按钮上的data-id属性值“123”,并将其打印在控制台上。
相关问题
微信小程序event.currentTarget.dataset怎么用
event.currentTarget.dataset 是指当前组件的dataset数据集合,可以在wxml中添加自定义属性组成一个dataset,然后在事件处理函数中可以获取到这些值,例如:
```
<view data-id="{{id}}" data-name="{{name}}" bindtap="onTap">点击我</view>
// 在js中
Page({
onTap: function(event) {
console.log(event.currentTarget.dataset.id);
console.log(event.currentTarget.dataset.name);
}
})
```
在这个例子中,当点击了“点击我”这个view组件时,可以通过event.currentTarget.dataset获取到它的data-id和data-name的值。
小程序中如何读取event.currentTarget.dataset 集合中的数据
在小程序中,可以通过以下方式读取 `event.currentTarget.dataset` 集合中的数据:
1. 在事件处理函数中,使用 `event.currentTarget.dataset` 获取数据集合。
2. 根据集合中的属性名,使用 `[]` 运算符访问对应的属性值。
例如,假设数据集合如下:
```html
<view data-id="1" data-name="Apple" bindtap="handleTap">Apple</view>
<view data-id="2" data-name="Banana" bindtap="handleTap">Banana</view>
<view data-id="3" data-name="Cherry" bindtap="handleTap">Cherry</view>
```
在事件处理函数中,可以通过以下方式访问数据集合:
```javascript
Page({
handleTap: function(event) {
const id = event.currentTarget.dataset.id; // 获取 data-id 属性值
const name = event.currentTarget.dataset.name; // 获取 data-name 属性值
console.log(`Clicked ${name} (ID ${id})`);
}
});
```
当点击一个 `<view>` 元素时,事件处理函数 `handleTap` 会被调用,并且 `event.currentTarget.dataset` 会返回一个包含 `id` 和 `name` 属性的对象。我们可以通过 `[]` 运算符访问对应的属性值,从而获取对应的数据。