亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 課堂 > 小程序 > 正文

微信小程序自定義鍵盤 內部虛擬支付

2020-03-21 16:04:35
字體:
來源:轉載
供稿:網友

本文實例為大家分享了微信小程序自定義鍵盤的具體代碼,供大家參考,具體內容如下

先看效果圖 :

微信小程序,鍵盤,虛擬支付

微信支付的話,調用微信支付接口是有自己的小鍵盤的,因為小程序沒有內部鍵盤,所以有時候商城內部需要零錢支付 ,會員卡支付,輸入密碼就需要自己做一個小鍵盤了。

 css  跟  html不做過多說明 直接照搬就行   頁面上面的3個小圖片就不提供了 js 部分做了詳細注釋

<view class="popup-memu"> <view class="line" style="background-color: rgb(255, 255, 255)"></view> <view class="payMode" bindtap="pay" data-pay_type='weipay'>  <image src="/images/wechat.png"></image>  <text style="width:70%">微信</text>  <image src="/images/arrows-right.png"></image> </view> <view class="payMode" bindtap="pay" data-pay_type='1'>  <image src="/images/vip.png"></image>  <text style="width:70%">會員卡</text>  <image src="/images/arrows-right.png"></image> </view> <view class="payMode" bindtap="pay" data-pay_type='2'>  <image src="/images/payPacket.png"></image>  <text style="width:70%">零錢</text>  <image src="/images/arrows-right.png"></image> </view></view> <!-- 密碼框帶鍵盤 --><action-sheet hidden="{{passwordInputHidden}}" bindchange="passwordInputHidden"> <view class='password-input'>  <view>   <text style="display:{{inputPassword[0]?'':'none'}}"></text>  </view>  <view>   <text style="display:{{inputPassword[1]?'':'none'}}"></text>  </view>  <view>   <text style="display:{{inputPassword[2]?'':'none'}}"></text>  </view>  <view>   <text style="display:{{inputPassword[3]?'':'none'}}"></text>  </view>  <view>   <text style="display:{{inputPassword[4]?'':'none'}}"></text>  </view>  <view>   <text style="display:{{inputPassword[5]?'':'none'}}"></text>  </view> </view> <view class='tips'>請輸入支付密碼(  <text>-¥100</text>)</view> <view class='keyboard'>  <view class='left number'>   <view data-key="1" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>1</view>   <view data-key="2" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>2</view>   <view data-key="3" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>3</view>   <view data-key="4" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>4</view>   <view data-key="5" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>5</view>   <view data-key="6" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>6</view>   <view data-key="7" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>7</view>   <view data-key="8" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>8</view>   <view data-key="9" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>9</view>   <view data-key="X" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>X</view>   <view data-key="0" hover-class='active' hover-stay-time='100' bindtap='inputPassword'>0</view>   <view data-key="." hover-class='active' hover-stay-time='100' bindtap='inputPassword'>.</view>  </view>  <view class='right ctr-btn'>   <view class='ctr-btn-item' hover-class='active' hover-stay-time='100' bindtap='clear'>    <label class='iconfont icon-shanchu'></label>   </view>   <view class='ctr-btn-item' hover-class='active' hover-stay-time='100' bindtap='passwordInputHidden'>取消</view>  </view> </view></action-sheet>

CSS: 

.popup-memu { width: 100%; background-color: white; border-top: 1px solid #dedbd5; border-bottom: 1px solid #eee; display: block;} .line { background-color: #eee; margin-left: 10px; height: 1px; margin-right: 10px;} .popup-memu { height: 50px; font-size: 15px; line-height: 50px; border-bottom: 1px solid #eee;} .payMode { display: flex; background: #fff; align-items: center; border-bottom: 2px solid #eee;} .payMode image { width: 30px; height: 30px; margin-left: 18px; margin-right: 10px;} .sheet-content { background-color: #fff; padding: 0 15rpx;}/* 鍵盤 */.password-input { display: flex; width: 660rpx; border: 1px solid #ddd; margin: 0 auto; margin-top: 50rpx; background-color: #fff; border-radius: 3px;} .password-input view { width: 110rpx; height: 80rpx; display: flex; align-items: center; justify-content: center; box-sizing: border-box; border-right: 1px solid #ccc;} .password-input view:nth-child(6) { border-right: none;} .password-input view text { width: 6px; height: 6px; border-radius: 50%; background-color: #333;} .tips { font-size: 28rpx; text-align: center; margin-top: 5px;} .tips text { color: #c30;} .keyboard { width: 100%; display: flex; background-color: #fff; border-top: 1px solid #eee; margin-top: 50rpx;} .keyboard .number { display: flex; width: 570rpx; flex-wrap: wrap;} .keyboard .number view { width: 190rpx; height: 120rpx; line-height: 120rpx; text-align: center; font-size: 46rpx; font-weight: bold; box-sizing: border-box; border-right: 1px solid #eee; border-bottom: 1px solid #eee;} .keyboard .ctr-btn { width: 180rpx;} .keyboard .ctr-btn view { height: 240rpx; line-height: 240rpx; text-align: center; box-sizing: border-box; border-bottom: 1px solid #eee;} .keyboard .ctr-btn view .iconfont { font-size: 44rpx !important; color: #c30;} .keyboard .ctr-btn view:nth-child(2) { font-size: 46rpx; color: #c30;} .keyboard .active { background-color: #e4e7ed;} .activity { background-color: #fff; padding: 25rpx 20rpx; display: flex; align-items: center; justify-content: space-between; font-size: 24rpx; border-bottom: 1px solid #f6f6f6;} .activity.activity-item { font-size: 26rpx;} .arrows-right { width: 30rpx; height: 30rpx;} .arrows-right.active { transform: rotate(270deg);}/* 鍵盤結束 */

 js:

Page({  /**  * 頁面的初始數據  */ data: {  inputPassword: '', //輸入的密碼  passwordInputHidden: true,//hidden是true 默認隱藏  pay_type: '',//支付方式  password: 123456,//設置的密碼 這里寫死 實際開發中后臺專門設置一個表存儲用戶設置的密碼 },  /**  * 生命周期函數--監聽頁面加載  */ onLoad: function (options) {  },  pay(e) {  //你選擇的支付方式  var pay_type = e.currentTarget.dataset.pay_type;  var _this = this;  if (pay_type == 'weipay') {    //此處寫入微信支付需要執行的代碼不做過多介紹  } else {    //內部支付 打開鍵盤   _this.passwordInputHidden();  } },   inputPassword(e) {  //鍵盤輸入的密碼 賦值給inputPassword  this.data.inputPassword = this.data.inputPassword + e.currentTarget.dataset.key;  this.setData({   inputPassword: this.data.inputPassword  });  //當輸入密碼正確時   if (this.data.inputPassword.length == 6 && this.data.password == this.data.inputPassword) {     this.passwordInputHidden();//關閉小鍵盤  }   //當輸入密碼錯誤時 給個提示 并且把輸入的密碼清零  if (this.data.inputPassword.length == 6 && this.data.password != this.data.inputPassword) {   wx.showModal({    title: "提示",    content: "輸入密碼錯誤",   })   this.setData({    inputPassword: ''   });  } }, passwordInputHidden() {  this.setData({   passwordInputHidden: !this.data.passwordInputHidden //取反 打開關閉小鍵盤  });  this.setData({   inputPassword: ''  }); }, //刪除輸入錯誤的密碼 clear() {  var index = this.data.inputPassword.length;  if (index > 0) {   var inputPassword = this.data.inputPassword.substr(0, index - 1);   this.setData({    inputPassword: inputPassword   });  } }, })

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91地址最新发布| 性色av一区二区三区| 国产精品男人的天堂| 欧美日韩国产成人在线观看| 久久久成人av| 亚洲精品xxxx| 影音先锋日韩有码| 欧美成人精品影院| 最近免费中文字幕视频2019| 性视频1819p久久| 黑人巨大精品欧美一区二区免费| 亚洲色图国产精品| 亚洲第一男人av| 亚洲午夜av久久乱码| 日韩欧美福利视频| 亚洲国产欧美日韩精品| 成人欧美一区二区三区在线湿哒哒| 精品久久久久久久久久| 精品爽片免费看久久| 日韩中文在线不卡| 69av在线播放| 中文字幕一精品亚洲无线一区| 亚洲视频在线视频| 亚洲综合在线播放| 亚洲精品自拍第一页| 日韩av网址在线观看| 毛片精品免费在线观看| 精品日本高清在线播放| 欧美成人免费全部| 日本韩国欧美精品大片卡二| 亚洲欧美国产一本综合首页| 日韩福利视频在线观看| 91九色国产社区在线观看| 欧美猛交ⅹxxx乱大交视频| 亚洲精品日韩av| 久久99精品视频一区97| 国产精品视频免费观看www| 精品日韩视频在线观看| 日韩av电影中文字幕| 日韩精品免费视频| 日本成人激情视频| 成人网欧美在线视频| 热久久免费视频精品| 欧美精品第一页在线播放| 亚洲美女精品成人在线视频| 亚洲欧美制服综合另类| 这里只有精品在线观看| 久久久久亚洲精品| 亚洲精品国产精品国自产在线| 亚洲成年人影院在线| 国产成人在线一区二区| 欧美一区二三区| 亚洲18私人小影院| 久久综合伊人77777尤物| 97久久精品在线| 亚洲成人a**站| 日韩欧美a级成人黄色| 亚洲一区二区三区777| 国产成人a亚洲精品| 欧美午夜影院在线视频| 欧美限制级电影在线观看| 秋霞av国产精品一区| 午夜精品久久久久久久男人的天堂| 国产欧美日韩免费| 国产精品啪视频| 久热精品视频在线免费观看| 91国在线精品国内播放| 亚洲免费视频一区二区| 亚洲色图美腿丝袜| 亚洲高清不卡av| 日韩欧美在线视频免费观看| 热99久久精品| 欧美视频专区一二在线观看| 亚洲无亚洲人成网站77777| 69久久夜色精品国产69乱青草| 精品国产自在精品国产浪潮| 久久久女女女女999久久| 2019中文在线观看| 91九色国产社区在线观看| 一区二区三区www| 国产手机视频精品| 91久久国产精品91久久性色| 日韩欧美福利视频| 欧美激情啊啊啊| 国产精品白丝av嫩草影院| 精品久久久久久久久久ntr影视| 成人有码在线播放| 久久九九热免费视频| 欧美视频在线免费看| 久久精品视频一| 国产ts人妖一区二区三区| 久久久久在线观看| 久久精品国产亚洲精品2020| 久久男人资源视频| 久久久精品视频成人| 久久久www成人免费精品| 日韩中文字幕精品视频| 国产精品草莓在线免费观看| 宅男66日本亚洲欧美视频| 欧美一乱一性一交一视频| 日韩免费在线播放| 午夜免费久久久久| 少妇高潮 亚洲精品| 久久香蕉频线观| 久久久久久免费精品| 在线视频免费一区二区| 亚洲欧美日韩一区二区在线| 亚洲性xxxx| 亚洲欧美综合精品久久成人| 亚洲国产美女精品久久久久∴| 亚洲欧洲黄色网| 亚洲成人在线视频播放| 久久九九全国免费精品观看| 国产精品精品视频| 国语自产精品视频在线看| 91热精品视频| 国产91色在线播放| 黑人巨大精品欧美一区二区| 亚洲欧美国产一区二区三区| 国产福利成人在线| 国产欧美一区二区三区在线看| 成人做爰www免费看视频网站| 久久伊人精品天天| 色老头一区二区三区| 成人高清视频观看www| 欧美日韩黄色大片| 亚洲精品欧美极品| 国产欧美日韩丝袜精品一区| 国产91精品久久久久久| 欧美激情视频免费观看| 国产小视频国产精品| 亚洲国模精品一区| 国产激情999| 亚洲男女性事视频| 久久久精品一区| 久久综合久中文字幕青草| 在线观看视频亚洲| 日韩免费精品视频| 中文字幕日韩欧美在线视频| 青青久久aⅴ北条麻妃| 日韩在线观看成人| 久久av.com| 2023亚洲男人天堂| 国内精品久久久久伊人av| 国产一区欧美二区三区| 国产激情综合五月久久| 亚洲一区免费网站| 国产精品免费视频xxxx| 国产精品极品美女在线观看免费| 韩国三级日本三级少妇99| 亚洲乱码国产乱码精品精天堂| 欧美高清videos高潮hd| 韩国19禁主播vip福利视频| 九色精品美女在线| 久久九九热免费视频| 国产91久久婷婷一区二区| 亚洲日本中文字幕免费在线不卡| 亚洲第一精品夜夜躁人人爽| 97色在线视频| 成人乱色短篇合集| 91精品国产高清久久久久久久久| 亚洲偷欧美偷国内偷| 精品一区电影国产| 国产精品美腿一区在线看|