m0_73830670 2022-10-04 10:31 采纳率: 100%
浏览 170
已结题

实现一个输入框和一个提交按钮

实现一个输入框和一个提交按钮。点击提交按钮时,如果云数据库中没有数据,则将当前输入框内容上传。如果云数据库中有数据,则在
界面中显示"不要重复输入“

提示∶在判断能否上传时,你需要先读取数据库内容,再向数据库上传。实际上要做到这样的连续行为,需要在完成第一个行为的sucess回调函数中执行第二个行为。若不这样操作,则不能保证执行的先后顺序,会产生意外的结果。

  • 写回答

4条回答 默认 最新

  • CSDN专家-showbo 2022-10-04 12:00
    关注

    之前写的一个示例,题主参考下
    ###demo.wxml

    <view style="padding:10px">
      <form bindsubmit="saveToCloudDb">
        <input name="text" style="border:solid 1px #ccc;padding:5px;margin-bottom:10px" placeholder="请输入输入内容" />
        <button type="primary" form-type="submit">提交</button>
    </form>
    </view>
     
    
    

    ###demo.js,注意修改云数据库环境id

    wx.cloud.init({env: '题主云数据库环境id'});
    const db = wx.cloud.database();
    Page({
      saveToCloudDb(e){
        var text=e.detail.value.text.trim();
        if(text!=""){
          //获取test集合,查找集合中text字段值等于输入值的记录,如果字段名称不是text,改为.where({xxxx:text}),xxx为字段名称
          db.collection('test').where({text}).get({
            success(res){
              if(res.data.length==0){//不存在保存记录,字段名称为text,其他修改data:{xxxx:text}
                db.collection('test').add({data:{text}}).then(e=>{
                  wx.showToast({title: '保存成功'});
                }).catch((e)=>{
                  wx.showToast({title: '保存失败',icon:'none'});
                  console.log(e)
                });
              }
              else wx.showToast({title: '不要重复输入',icon:'none'});
            }
          })
        }
       }
    })
     
     
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 10月12日
  • 已采纳回答 10月4日
  • 赞助了问题酬金15元 10月4日
  • 创建了问题 10月4日

悬赏问题

  • ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
  • ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
  • ¥15 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab