微信小程序 - 绑定事件 bindtap(包括是否传入参数)

本文详细介绍了小程序中bindtap事件的绑定方式,包括不带参数和带参数的两种情况,并提供了具体的代码示例,帮助开发者更好地理解和使用bindtap事件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  小程序绑定事件的方式有很多种,这里我只对bindtap的绑定方式进行介绍,其他的绑定方式也是差不多这样的。

1、不带参数的绑定方式

index.wxml文件中:share表示绑定的事件名称

<view class='enjoy' bindtap='share'>立即分享</view>

index.js文件中:

share(){
    console.log('分享。。。。')
}
2、带参数的绑定方式

index.wxml文件中:
  share表示绑定的事件名称,data-id对应的是要传递过去的参数,data- 后面的名称可以自定义,在js文件中要拿到这个参数就要对应的点出data- 后面的自定义名称

<view wx:for="{{titleList}}" wx:for-index="index" wx:for-item="itemTitle" wx:key="index+itemTitle" bindtap='getLists' data-id="{{itemTitle.bid}}">
    <view>{{itemTitle.title}}</view>
    <view class='line'></view>
</view>

index.js文件中:
  因为wxml文件中 data- 后面的自定义名称是 id,所以在这里直接通过 e.currentTarget.dataset.id 取出来即可

getLists(e) {
    // 拿到对应参数 有两种方式都可以拿到对应的参数
    console.log('e---->', e.currentTarget.dataset.id)
    //或者
    console.log('e.target.dataset.id---->', e.target.dataset.id)
}
微信小程序中,`bindtap` 是用于绑定点击事件的属性,它默认只能绑定一个事件处理函数。如果您想要绑定多个值,可以使用以下两种方法: 1. 使用 `data-*` 自定义属性: 在 WXML 中,您可以使用 `data-*` 自定义属性来存储额外的数据,并在点击事件处理函数中通过 `event.currentTarget.dataset` 来获取这些值。例如: ```html <view bindtap="handleTap" data-index="1" data-name="John">Click me</view> ``` ```javascript Page({ handleTap(event) { const index = event.currentTarget.dataset.index; const name = event.currentTarget.dataset.name; console.log(index, name); // 输出:1, John } }) ``` 在上面的示例中,我们使用 `data-index` 和 `data-name` 存储了两个同的值,并在点击事件处理函数中获取它们。 2. 使用事件代理: 如果您有多个元素需要绑定相同的点击事件处理函数,并且每个元素需要同的值,可以使用事件代理。在父元素上绑定点击事件,然后在事件处理函数中通过判断 `event.target` 来获取同的值。例如: ```html <view bindtap="handleTap"> <view data-index="1" data-name="John">Element 1</view> <view data-index="2" data-name="Jane">Element 2</view> </view> ``` ```javascript Page({ handleTap(event) { const index = event.target.dataset.index; const name = event.target.dataset.name; console.log(index, name); // 根据点击的元素同输出相应的值 } }) ``` 在上面的示例中,我们在父元素上绑定了点击事件,并通过判断 `event.target` 来获取同元素上的值。 这些方法可以根据您的具体需求来选择使用。希望对您有所帮助!
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值