wxml
<view wx:if="{{wallets_password_flag}}" class="wallets-password">
<view class="input-content-wrap">
<view class="top">
<view catchtap="close_wallets_password" class="close">×view>
<view class="txt">请输入支付密码view>
<view catchtap="modify_password" class="forget">忘记密码view>
view>
<view class="actual_fee">
<span>¥span>
<text>{{actual_fee/100}}text>
view>
<view catchtap="set_Focus" class="input-password-wrap">
<view class="password_dot">
<i wx:if="{{wallets_password.length>=1}}">i>
view>
<view class="password_dot">
<i wx:if="{{wallets_password.length>=2}}">i>
view>
<view class="password_dot">
<i wx:if="{{wallets_password.length>=3}}">i>
view>
<view class="password_dot">
<i wx:if="{{wallets_password.length>=4}}">i>
view>
<view class="password_dot">
<i wx:if="{{wallets_password.length>=5}}">i>
view>
<view class="password_dot">
<i wx:if="{{wallets_password.length>=6}}">i>
view>
view>
view>
<input bindinput="set_wallets_password" class="input-content" password type="number" focus="{{isFocus}}" maxlength="6" />
view>
wxss
page .wallets-password {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.6);
}
page .wallets-password .input-content-wrap {
position: absolute;
top: 200rpx;
left: 50%;
display: flex;
flex-direction: column;
width: 600rpx;
margin-left: -300rpx;
background: #fff;
border-radius: 20rpx;
}
page .wallets-password .input-content-wrap .top {
display: flex;
align-items: center;
height: 90rpx;
border-bottom: 2rpx solid #ddd;
justify-content: space-around;
}
page .wallets-password .input-content-wrap .top .close {
font-size: 44rpx;
color: #999;
font-weight: 100;
}
page .wallets-password .input-content-wrap .top .forget {
color: #00a2ff;
font-size: 22rpx;
}
page .wallets-password .input-content-wrap .actual_fee {
display: flex;
align-items: center;
justify-content: center;
color: #000;
height: 100rpx;
margin: 0 23rpx;
border-bottom: 2rpx solid #ddd;
}
page .wallets-password .input-content-wrap .actual_fee span {
font-size: 24rpx;
}
page .wallets-password .input-content-wrap .actual_fee text {
font-size: 36rpx;
}
page .wallets-password .input-content-wrap .input-password-wrap {
display: flex;
align-items: center;
justify-content: center;
height: 150rpx;
}
page .wallets-password .input-content-wrap .input-password-wrap .password_dot {
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: #000;
box-sizing: border-box;
width: 90rpx;
height: 90rpx;
border: 2rpx solid #ddd;
border-left: none 0;
}
page .wallets-password .input-content-wrap .input-password-wrap .password_dot:nth-child(1) {
border-left: 2rpx solid #ddd;
}
page .wallets-password .input-content-wrap .input-password-wrap .password_dot i {
background: #000;
border-radius: 50%;
width: 20rpx;
height: 20rpx;
}
page .wallets-password .input-content {
position: absolute;
opacity: 0;
left: -100%;
top: 600rpx;
background: #f56;
z-index: -999;
}
page .wallets-password .input-content.active {
z-index: -99;
}
wxjs
data: {
payment_mode: 1,
isFocus: false,
balance:100,
actual_fee:20,
wallets_password_flag:false
},
set_wallets_password(e) {
this.setData({
wallets_password: e.detail.value
});
if (this.data.wallets_password.length == 6) {
wallet_pay(this)
}
},
set_Focus() {
console.log('isFocus', this.data.isFocus)
this.setData({
isFocus: true
})
},
set_notFocus() {
this.setData({
isFocus: false
})
},
close_wallets_password () {
this.setData({
isFocus: false,
wallets_password_flag: false,
})
},
pay() {
pay(this)
}
})
function pay(_this) {
let apikey = _this.data.apikey;
let id = _this.data.id;
let payment_mode = _this.data.payment_mode
if (payment_mode == 1) {
console.log('微信支付')
} else if (payment_mode == 0) {
console.log('转账支付')
}
|