知识 分享 互助 懒人建站

    懒人建站专注于网页素材下载,提供网站模板、网页设计、ps素材、图片素材等,服务于【个人站长】【网页设计师】和【web开发从业者】的代码素材与设计素材网站。

    懒人建站提供网页素材下载、网站模板
    知识 分享 互助!

    微信小程序获取多个formId的方法(解决小程序点击一次,提交多个表单问题)

    作者:速博娱乐是什么 2018-06-17 人气:
    微信小程序获取多个formId的方法,解决小程序点击一次,提交多个表单问题,只要你点击登录按钮,就能提交一次表单,也能获取一次formId,但是想要实现点击一次提交多次,光靠复制这几行代码,貌似还不行,无论是缩小按钮,还是一些其他的奇葩方式,都不行。

    微信小程序获取多个formId的方法重点,讲一下遇到问题,和解决问题的过程。

    需求:微信小程序点击一次,提交多个表单,其实是有业务需求的,这里不写太清楚,做到这一块的同学,自然懂

      <form bindsubmit="formSubmit" report-submit="{{true}}">
          <button formType="submit" class='btn'>
                <view class='aa'>
                </view>
          </button>
      </form>

    如同上面的几行代码,只要你点击登录按钮,就能提交一次表单,也能获取一次formId,但是想要实现点击一次提交多次,光靠复制这几行代码,貌似还不行,无论是缩小按钮,还是一些其他的奇葩方式,都不行。

    这里要说的是一种点击穿透方式

      <form bindsubmit="formSubmit" report-submit="{{true}}">
          <button formType="submit" class='btn'>
                <view class='aa'>
                </view>
          </button>
      </form>

    我在里面写了一个view (button里面)
    给你们看一下样式(样式很重要)

          .btn{
            width: 20rpx;
            height: 20rpx;
            margin: 0;
            padding: 0;
            border-radius: 0;
            position: fixed;
            background: rgba(0,155,0,0.5);
            top: 0;
          }
          button::after{
            border:none;
          }
          .aa{
            width: 200rpx;
            height: 200rpx;
            background: rgba(0,155,0,0.5);
            position:fixed;
            top: 0;
          }

    再看一下js,顺便说一下,模拟器上看不到实际的formId,用手机调试模式可以看到

          formSubmit: function(e) {
              if (e.detail.formId != 'the formId is a mock one') {
                  this.setData({
                      formIdString: e.detail.formId + "," + this.data.formIdString
                  })
              }
              console.log(this.data.formIdString)
          },

    看到的是这样,当你点击绿色的任何区域都能点击到按钮,然后提交表单

    然后,骚操作来了。。。

      <form bindsubmit="formSubmit" report-submit="{{true}}">
          <button formType="submit" class='btn'>
                <view class='aa'>
                     <form bindsubmit="formSubmit" report-submit="{{true}}">
                           <button formType="submit" class='btn'>
                                <view class='aa'>
                                </view>
                          </button>
                     </form>
                </view>
          </button>
      </form>

    我把整个的wxml代码复制一遍 放到view里面,看起来和之前差不多,其实是叠起来了

    然而 实际操作的话,点击绿色部分,会提交两次,点击红色部分只会提交一次,这是为啥呢,先看图

    微信小程序获取多个formId的方法(解决小程序点击一次,提交多个表单问题)

    现在应该明白了吧,个人感觉图已经解释一切,如果不懂,可以发评论。

    要更多formId 那么就要更多的复制和粘贴,如果哪位老铁,写了个简化写法记得告诉我,我暂时还没有想到好的办法。

    然后,这篇文章是我的原创。。。 下次还有新鲜的想法,还会和大家交流。


    作者:破土称金
    链接:https://www.jianshu.com/p/84dd9cd6eaed


    ↓ 查看全文

    微信小程序获取多个formId的方法(解决小程序点击一次,提交多个表单问题)由懒人建站收集整理,您可以自由传播,请主动带上本文链接

    懒人建站就是免费分享,觉得有用就多来支持一下,没有能帮到您,懒人也只能表示遗憾,希望有一天能帮到您。

    微信小程序获取多个formId的方法(解决小程序点击一次,提交多个表单问题)-最新评论

    网站地图 菲彩国际官方网站 百乐坊在线娱乐 永利娱乐帐号
    申博开户送28元 申博娱乐游戏ag国际馆 申博游戏官网 申博太阳城网上
    彩票在线新加坡2分彩 新葡京注册棋牌游戏登入 彩天堂平台可靠吗登入 威尼斯人彩票赌场
    新世纪娱乐最新网址 凯斯娱乐备用网址 菲彩国际娱乐 环球娱乐信用额网址
    伟博娱乐官方网站 利娱乐网站 利娱乐国际 菲彩国际线上博彩
    988XTD.COM 16jbs.com 261SUN.COM 787sunbet.com 500xsb.com
    8LHS.COM 785DC.COM 987PT.COM 295SUN.COM 1112933.COM
    444xsb.com XSB885.COM 77sbib.com XSB2222.COM XSB592.COM
    388TGP.COM XSB173.COM 1112997.COM 986jbs.com XSB118.COM