微信小程序技巧 Input框提交后清除

本文分享了在小程序中实现表单数据重置的方法。通过使用中间变量存储输入信息并在发送后清空输入框内容,确保了数据可以被正确处理且用户界面保持整洁。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分享踩坑经历:

这里的原理是 通过一个中间变量去存储输入的信息 然后把原来的值清除掉,把中间变量的值拿去操作

说的再多都是废话,直接上代码:

Page({
        data: {
            sendInfo: '',
            userMessage: ''
        },
<form bindreset="cleanInput">
    <input type="text" placeholder="输入新消息" 
    bindinput="bindMessage"></input>
    <button bindtap="sendMessage" formType="reset">发送
    </button>
</form>
bindMessage: function(e) {
        this.setData({
            userMessage: e.detail.value
        })
    }
cleanInput: function() {
        var setMessage = {
            sendInfo: this.data.userMessage
        }
        this.setData(setMessage)
    }

这样就可以成功点击发送按钮之后,拿到输入框的数据去进行操作,而且输入框的内容会被清空(重置),button一定是要在form里面,并且要有formType属性。

### 微信小程序 Input 组件使用教程 #### 属性设置 Input 输入组件是微信小程序中用于接收用户输入的关键部件。为了创建高效且用户体验良好的输入界面,开发者可以通过配置多种属性来定制化该组件的功能[^1]。 对于基本的输入定义,在 WXML 文件中的声明如下所示: ```html <input type="text" value="{{value}}" placeholder="请输入内容"/> ``` 这里 `type` 可以指定为不同的类型如 text, number 等;而 `placeholder` 则是在无任何输入时显示给用户的提示文字[^2]。 #### 数据绑定与更新 为了让页面能够动态反映用户的输入情况,通常会采用双向数据绑定的方式处理 input 的值变化。这涉及到在 JS 中设定初始状态并监听特定事件来进行实时同步[^4]。 ```javascript Page({ data: { inputValue: '' }, change(e) { this.setData({ inputValue: e.detail.value }); } }) ``` 上述代码片段展示了如何利用 setData 方法将用户每次键入的新字符及时反馈至视图层。 #### 解决常见问题 ##### 聚焦与键盘弹出不一致 当遇到点击输入后软键盘未能正常弹出的情况时,可能是因为存在某些样式冲突或是其他逻辑干扰所致。建议检查是否有绝对定位元素遮挡住了实际焦点区域,并尝试调整 z-index 或者移除不必要的 CSS 样式[^3]。 另外值得注意的一点是,在 iOS 设备上有时会出现自动大写首字母的现象影响体验感,对此可以在 input 上增加 `adjust-position="false"` 来防止屏幕滚动从而改善这一状况。 ##### 清除按钮失效 如果发现内置清除图标无法正常使用,则可能是由于版本差异引起的支持性缺失或者是自定义样式覆盖了默认行为所造成的。针对前者应当确认当前使用的 SDK 是否最新;至于后者则需排查相关联的选择器优先级是否正确。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值