精选文章 微信小程序车牌号码输入(虚拟键盘)

微信小程序车牌号码输入(虚拟键盘)

作者:wuhanwhite 时间: 2021-02-05 09:43:19
wuhanwhite 2021-02-05 09:43:19
【摘要】近日在网上看到一位博主写的微信小程序 输入车牌号(有新能源),原文链接:https://blog.csdn.net/qq706352062/article/details/105554453?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159652341219195188354739%2522%252C%2522scm%25...

近日在网上看到一位博主写的微信小程序 输入车牌号(有新能源),原文链接:https://blog.csdn.net/qq706352062/article/details/105554453?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159652341219195188354739%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=159652341219195188354739&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v3~pc_rank_v3-12-105554453.pc_ecpm_v3_pc_rank_v3&utm_term=%E5%BE%AE%E4%BF%A1%E5%B0%8F%E7%A8%8B%E5%BA%8F%E8%BD%A6%E7%89%8C%E8%BE%93%E5%85%A5%E9%94%AE%E7%9B%98&spm=1018.2118.3001.4187

有些个别功能稍作修改后为以下效果

微信小程序车牌号码输入(虚拟键盘)1

微信小程序车牌号码输入(虚拟键盘)2

 

相应的wxml文件如下:


  
   请输入您要缴费的车牌号码    {{carnum[0] || ''}} {{carnum[1] || ''}}   {{carnum[2] || ''}} {{carnum[3] || ''}} {{carnum[4] || ''}} {{carnum[5] || ''}} {{carnum[6] || ''}}    + 新能源   {{carnum[7]}}   
   
   
    清空 关闭     {{itemlist}}         {{itemlist}}     
  

JS文件如下:

Page({ /** * 页面的初始数据 */
  data: { // 省份简写 provinces: [ ['京', '沪', '粤', '津', '冀', '晋', '蒙', '辽', '吉', '黑'], ['苏', '浙', '皖', '闽', '赣', '鲁', '豫', '鄂', '湘'], ['桂', '琼', '渝', '川', '贵', '云', '藏'], ['陕', '甘', '青', '宁', '新'], ], // 车牌输入 numbers: [ ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"], ["Q", "W", "E", "R", "T", "Y", "U", "I", "O", "P"], ["A", "S", "D", "F", "G", "H", "J", "K", "L"], ["Z", "X", "C", "V", "B", "N", "M"] ], carnum: [], showNewPower: false, KeyboardState: true
  },
  // 选中点击设置
  bindChoose(e) { if (!this.data.carnum[6] || this.data.showNewPower) { var arr = []; arr[0] = e.target.dataset.val; this.data.carnum = this.data.carnum.concat(arr) this.setData({ carnum: this.data.carnum }) } if(this.data.carnum[6]){ this.setData({ showNewPower: true, KeyboardState: true }) }
  },
  bindDelChoose() { if (this.data.carnum.length != 0) { this.data.carnum.splice(this.data.carnum.length - 1, 1); this.setData({ carnum: this.data.carnum }) } },
  showPowerBtn() { this.setData({ showNewPower: true, KeyboardState: true })
  },
  closeKeyboard() { this.setData({ KeyboardState: false })
  },
  openKeyboard() { this.setData({ KeyboardState: true })
  },
  //清空按钮
  deleteAll(){ this.setData({ carnum:[], })
  },
  // 提交车牌号码
  submitNumber() { if(this.data.carnum.length<7){ wx.showToast({ title: '请输入完整的车牌!', icon:'none', duration: 2000, }) } if (this.data.carnum[6]) { var carno=this.data.carnum; var carnonew=carno.join(''); console.log(carnonew); }
  },
  /** * 生命周期函数--监听页面加载 */
  onLoad: function (options) { this.setData({ carnum:['鄂'], })
  }, /** * 生命周期函数--监听页面初次渲染完成 */
  onReady: function () { }, /** * 生命周期函数--监听页面显示 */
  onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */
  onHide: function () { }, /** * 生命周期函数--监听页面卸载 */
  onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */
  onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */
  onReachBottom: function () { }, /** * 用户点击右上角分享 */
  onShareAppMessage: function () { }
})

wxss文件如下:

/* pages/parking_home/parking_home.wxss */

.page{
  background: #fff;
  position: absolute;
  top:0;
  bottom:0;
  width: 100%;
}
.weui-cells__title{
  margin-top:.77em;
margin-bottom:.3em;
padding-left:15px;
padding-right:15px;
color:#999;
font-size:14px;
 
}
/* 虚拟键盘 */
.keyboard{
  height: auto;
  background: #d1d5d9;
  position: fixed;
  bottom:0;
  width: 100%;
  left:0;
}
.keyboard-item{
  padding:10rpx 2rpx 25rpx 2rpx;
  position: relative;
  display: block;
}
/* 关闭虚拟键盘 */
.keyboardClose{
  height: 70rpx;
  background-color: #f7f7f7;
  overflow: hidden;
}
.keyboardClose_btn1{
  float: right;
  line-height: 70rpx;
  font-size: 15px;
  padding-right: 30rpx;
  color: red;
}
.keyboardClose_btn2{
  float: right;
  line-height: 70rpx;
  font-size: 15px;
  padding-right: 30rpx;
  color: orange;
}
/* 虚拟键盘-省缩写 */
 
/* 虚拟键盘-行 */
.keyboard-line{
  margin:0 auto;
  text-align: center;
}
.iscarnumber .keyboard-line{
  text-align: center;
  margin-left: 5rpx;
}
/* 虚拟键盘-单个按钮 */
.keyboard-btn{
  font-size: 25px;
  color: #333333;
  background: #fff;
  display: inline-block;
  padding:18rpx 0; width: 64rpx;
  text-align: center;
  box-shadow: 0 6rpx 5rpx 0 #999999;
  border-radius: 10rpx;
  margin:12rpx 6rpx;
}
.keyboard-btn:active{
  font-size: 25px;
  color: #333333;
  background: #999999;
  display: inline-block;
  padding:18rpx 0; width: 64rpx;
  text-align: center;
  box-shadow: 0 6rpx 5rpx 0 #999999;
  border-radius: 10rpx;
  margin:12rpx 6rpx;
}

/* 虚拟键盘-删除按钮 */
.keyboard-del{
  font-size: 17px;
  color: #333333;
  background: #A7B0BC;
  display: inline-block;
  padding:4rpx 25rpx;
  box-shadow: 0 2rpx 0 0 #999999;
  border-radius: 10rpx;
  margin:5rpx;
  position: absolute;
  width: 20px;
  height: 45px;
  line-height: 45px;
  bottom:26rpx;
  right: 16rpx;
}
.keyboard-del:active{
  font-size: 17px;
  color: #333333;
  background: #fff;
  display: inline-block;
  padding:4rpx 25rpx;
  box-shadow: 0 2rpx 0 0 #999999;
  border-radius: 10rpx;
  margin:5rpx;
  position: absolute;
  width: 20px;
  height: 45px;
  line-height: 45px;
  bottom:26rpx;
  right: 16rpx;
}
.keyboard-del-font{
  font-size:25px;
}
 
/* 车牌号码 */
.carNumber-items{
  text-align: center;
}
.carNumber-items-box{
  width: 158rpx;
  height: 90rpx;
  border: 2rpx solid #CCCCCC;
  border-radius: 4rpx;
  display: inline-block;
  vertical-align: middle;
  position: relative;
  margin-right: 30rpx;
}
.carNumber-items-box-list{
  width: 76rpx;
  height: 70rpx;
  line-height: 70rpx;
  text-align: center;
  display: inline-block;
  font-size: 18px;
  margin:10rpx 0;
  vertical-align: middle;
}
.carNumber-items-province{
  border-right: 1rpx solid #ccc;
}
.carNumber-items-box::after{
  content: "";
  width: 6rpx;
  height: 6rpx;
  position: absolute;
  right: -22rpx;
  top: 40rpx;
  border-radius: 50%;
  background-color: #ccc;
}
.carNumber-item{
  width: 76rpx;
  height: 90rpx;
  font-size: 18px;
  text-align: center;
  border: 2rpx solid #CCCCCC;
  border-radius: 4rpx;
  line-height: 90rpx;
  display: inline-block;
  margin:0 4rpx;
  vertical-align: middle;
}
/* 新能源 */
.carNumber-item-newpower{
  border: 2rpx dashed #A8BFF3;
  background-color: #F6F9FF;
  color: #A8BFF3;
  font-size: 12px;
  line-height: 45rpx;
}
.carNumber-newpower-add{
  font-size: 18px;
}
 
/* 确认按钮 */
.carNumberBtn{
  border-radius: 4rpx;
  margin:80rpx 40rpx;
}

用户点击提交后,如果车牌位数不足7位,提示请输入完整的车牌号码,具体车牌号码请看操作台。

扩展功能,目前百度AI接口支持传入图片,系统自动返回车牌号码,后期准备添加功能,用户只需要拍照传入一个车牌图片,自动填入车牌号码,这样可以更加方便用户使用。

特将前端源码分享给各位看客。

勿删,copyright占位
分享文章到微博
分享文章到朋友圈

上一篇:学Mysql怎样快速入门?

下一篇:删库一定要跑路吗?手把手教你MySQL数据恢复

您可能感兴趣

  • 用Delphi编写DelTree程序

    Delphi提供了关于文件操作的许多函数,其中关于目录操作的有目录的创建与删除、设置当前目录、获取当前目录等。目录的删除有函数(Function)RemoveDir和过程(Procedure)RmDir,但它们都只能删除空目录,对于非空目录则不能删除。要实现删除整个目录树(DelTree)必须编写程序来删除其中的子目录和文件。   目录中的文件可以通过调用函数DeleteFile来删除,但对...

  • 一个小程序轻松换回一辆宝马

    李学凌/华西都市报 2000-11-30 13:36:38  程序员这个名字给人的第一感觉就是:埋头苦干,不抬头看路。   第一次见到周奕,正是这种感觉:背着一个笔记本电脑包,一副没有睡醒的模样。站在他身边看他写程序,见他笨得要死,用笔记本电脑的触摸板,一个像素一个像素地画图标。问他为什么不随身带一个外接鼠标,他说习惯了。   周奕是一个非常优秀的程序员,在中国编写过商用排版软件的,不过几人...

  • 突破C++的虚拟指针--C++程序的缓冲区溢出攻击

    作者:rix (rix@securiweb.net) backend注:本文来自Phrack56期的《SMASHING C++ VPTRS》。正如大多数国外黑客的文章,技术原理及应用都讲得比较详细,但所提供的源代码似乎总是会存在不大不小的问题。这也许是因为他们觉得应该让读者自己去研究和调试,以更好地掌握这些技术。或许以后我也会这样做。;)测试环境:  操作系统:Red Hat 6.1 (i3...

  • 用VB编写抽奖程序

    用VB编写抽奖程序{  一、界面设计  新建一个标准的EXE工程。在Form1窗体中放置一个定时器(Timer1)、两个文本框(Label1,Label2)、两个命令按钮(Command1,Command2)和包含7个元素的控件数组(Label3(0)—Label3(6))。  二、属性设置  Label3控件数组中的所有元素皆采用相同设置。  三、代码编写  本程序的实现原理是:当用户单击...

  • 如何在对话框中响应键盘按键

    我们首先想到的是响应WM_KEYDOWN消息,但实际运行却发现没有任何效果。原因是对话框里的控件需要首先对按键作出响应,比如多行编辑框必须首先处理回车,不至于回车使对话框关闭。我们要想在第一时间对对话框的按键做出响应,需要重载PreTranslateMessage,以下的代码实现了在对话框中显示虚拟键值(virtual-key code)BOOL CTestDlg::PreTranslate...

  • 想在你的程序中截住API函数吗?那就快看吧!

    在你的程序中做一个函数func(...

  • 如何编写控制面板程序

    如何编写控制面板程序 控制面板程序是用户用于配置Windows环境的一些特殊动态连接库(DLL)。Windows已经为我们提供了一些标准的控制面板程序,如字体、键盘、鼠标设置等;如图1所示。我们也可以根据实际的需要创建自己的控制面板程序,以便让用户来查看或者修改特定软硬件的参数设置。 控制面板的功能和操作方式控制面板程序的主要功能是显示一个对话框让用户完成特定的任务。但是,与其它应用程序不同...

  • 初用SOCKET做聊天室程序后所想到的……

    很早的文章了,是我初学WINSOCKET时写的。里面对WINSOCKET是如何使用并没讲到什么,只是一个很简单的程序。适合我们菜鸟们看看;)          初学WinSocket,看了原来从网上下载一直没时间看的几篇文章。受益菲浅,一时兴起,就边学边写了这个小型的聊天软件。因为是用的CSocket类做的,用的是TCP/IP的协议,所以可以在装了TCP/IP服务协议并联通了的机器之间使用(...

CSDN

CSDN

中国开发者社区CSDN (Chinese Software Developer Network) 创立于1999年,致力为中国开发者提供知识传播、在线学习、职业发展等全生命周期服务。

华为云40多款云服务产品0元试用活动

免费套餐,马上领取!
微信小程序车牌号码输入(虚拟键盘)介绍:华为云为您免费提供微信小程序车牌号码输入(虚拟键盘)在博客、论坛、帮助中心等栏目的相关文章,同时还可以通过 站内搜索 查询更多微信小程序车牌号码输入(虚拟键盘)的相关内容。| 移动地址: 微信小程序车牌号码输入(虚拟键盘) | 写博客