微信小程序获取input值的两种常用方式

时间:2024-01-31 10:19:59
1. bindinput
  • 事件是光标移动发生数据改变,不需要手动执行点击 。 数据自动获取
  • input框内使用属性的方式定义事件名称
<input  bindinput=\'getInputValue\'  name=\'price\' type=\'text\' placeholder=\'输入内容\'></input>
  • 在js 文件中定义事件方法获取数据
    • 其中 e.detail 是获取 input 数据 其中包含value值, cursor 是获取光标的位置
getInputValue(e){
  console.log(e.detail)// {value: "ff", cursor: 2}  
}

其他还有三种方法用法一致:在这里插入图片描述

2. bindsubmit
  • 携带 form 中的数据触发 submit 事件
  • bindsubmit 事件需要配合按钮的formType="submit" 操作
  • 设置input的name值来获取对应的数据
<form bindsubmit=\'loginForm\'>
  <text class=\'login-title\'>用户登录:</text>
  <input type=\'text\' name=\'username\' placeholder="请输入用户名"></input>
  <input type=\'password\' name=\'password\' placeholder="请输入账号密码"></input>
  <view class=\'ligin-button\'>
    <button formType="submit" type=\'primary\'>点击提交</button>
    <button formType="reset" type=\'primary\'>重置数据表单</button>
  </view>
</form>
  • 在js 中获取数据
    • 通过data.detail.value获取数据,获得的是json对象数据键值对一一对应
loginForm: function(data) {
    console.log(data.detail.value)//  {username: "hgj", password: "fsdfsd"}
    var username = data.detail.value.username
    var password = data.detail.value.password;
  }