小程序绑定事件分为bindtap和catchtap,catchtap不冒泡。
如果一个view有多个bindtap,只走最后面的。
如果一个view同时有bindtap和catchtap,只走catchtap。
<view id="outer" bindtap="handleTap1">
outer view
<view id="middle" catchtap="handleTap2">
middle view
<view id="inner" bindtap="handleTap3">
inner view
</view>
</view>
</view>
Page({
handleTap1: function (event) { //点击输出outer view bindtap
console.log("outer view bindtap")
},
handleTap2: function (event) { //点击输出middle view
console.log("middle view catchtap")
},
handleTap3: function (event) { //点击输出inner view bindtap middle view catchtap
console.log("inner view bindtap")
}
});
event中的currentTarget记录自己的view的信息,如id等等
console.log(event.currentTarget.id);
备注:输入框使用bindinput如:bindinput="getname"
输入框通过event.detail.value实时获取输入的内容