页面的 <form/>
组件,属性report-submit
为true
时,可以声明为需发模板消息,此时点击按钮提交表单可以获取formId
,用于发送模板消息。或者当用户完成支付行为,可以获取prepay_id
用于发送模板消息。
微信小程序文档是只有form提交的时候才会有formId,这样用户的formId可能数量比较少,以至于不能实现发送很多很多微信模板消息。所以这里要用别的方式来实现获取formId。另外获取的formId可以保存到数据库里,可以供七天内使用,这样不至于用户必须提交了form后再发送模板消息,可以随时用数据中保存的formId根据自己设定的激发条件来发送微信模板消息。
多说无益,直接上代码,看一眼就懂。
<
navigator
class=
"order-con"
url=
"/pages/i****x/w*****w/w****w">
<
view
class=
"orders">
<
button
class=
'login-user'
form-type=
'submit'
data-name=
'buttonName'>
<
image
class=
"orders-image"
src=
"../../image/s_dzl13.png"></
image
>
<
text
class=
"orders-text">当单击这里适合发起了formId,也跳转了页面
</
text
>
</
button
>
</
view
>
</
navigator
>
下面是js文件
formSubmit:
function (e) {
var that =
this
var formId = e.detail.formId;
var content = e.detail.target.dataset.name//记录用户的操作
console.log(
'form发生了submit事件,推送码为:', formId)
console.log(
'button点击事件来自:', content)
that.submintFromId(
formId,
content)
},
//提交formId,让服务器保存到数据库里
submintFromId:
function (formId, content) {
var that =
this
wx.request({
url: app.globalData.requestUrl +
't后台地址.aspx',
data: {
requestType:
"insert",
formId: formId,
content: content,
},
success:
function (response) {
}