小程序 点击view内部元素 不传参

在小程序中,使用event.target.dataset可以获取组件上的自定义属性数据,例如data-username。若要传递参数到事件处理函数,需通过data-*设置属性,然后在函数内通过event.target.dataset获取。同时,要注意event.target和event.currentTarget的区别,以及事件处理函数中不能直接带括号。

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

 点击 内部图片和文字  type 得到的是空  无法传递参数

解决办法:

用 currentTarget  代替 target

2、data -- 后面不能用驼峰大写 

event.target.dataset -- 圆形 data-*
自定义:event.detail.value    自详

 

1.3 数据传递
event.target.dataset -- 圆形 data-*
自定义:event.detail.value    自详
当对组件进行事件绑定时,事件处理函数严禁出现小括号,形如:

 
<button type="primary" bindtap="f5">按钮</button>

现在的问题就是:如何将参数传递到自定义函数的内部?

针对原生事件(如touchstart、tap等)只能通过以两步实现:

第一步:首先组件上通过data-*来实现自定义属性

 
<button 
    type="primary" 
    bindtap="f1" 
    data-username="张三">
    原生组件传参
</button>

第二步:在事件处理函数中传入event参数,代表事件对象,然后在函数体内部通过:event.target.dataset.*进行获取操作

 
Page({
    f1(event){
        let username = event.target.dataset.username;
        console.log(username);
    }
})
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值