限时免费试用:欢迎注册 api.bigmodel.org ,快速体验大模型 API 接入服务。
当前位置:首页 >开发者 >网站框架 >小程序

小程序 form可视化布局之input和picker

分类:小程序时间:2021-05-24浏览:2822

实现

我们要实现的目的是 form的数据是后台加载的,那么我们就要从onload处获取数据

代码

小程序源码: index.js
Page({
  data: {
   
    form:[]
  },
  onLoad:function(option){
    console.log(1)
    var form = [
      {
        'name':'名字',
        'type':'input',
        'field':'name',
        'val':''
      },
      {
        'name':'类型',
        'type':'dx',
        'field':'dx',
        'val': [0, 0, 0],
        'multiArray': [['无脊柱动物', '脊柱动物'], ['扁性动物', '线形动物', '环节动物', '软体动物', '节肢动物'], ['猪肉绦虫', '吸血虫']],
      },
    ]
    this.setData({
      form:form
    })
  },
  bindMultiPickerChange: function (e) {
    console.log('picker发送选择改变,携带值为', e.detail.value)
    var index = 1
    let temp = 'form[' + index +'].val'  // 获取list[index].date
    this.setData({
      [temp]: e.detail.value
    })
    console.log(this.data.form)
  },
  bindMultiPickerColumnChange: function (e) {
    console.log('修改的列为', e.detail.column, ',值为', e.detail.value);
    // 知道修改的列以后,就可以通过修改multiIndex中对应元素的值,然后再修改multiArray
  }
})
index.wxml

  
  
  
    {{item1.name}}--{{item1.type}}--{{item1.field}}--{{item1.val}}
    
    
      {{item1.name}}:
    
    
    
      
        
          
            {{item1.multiArray[0][item1.val[0]]}},
            {{item1.multiArray[1][item1.val[1]]}},
            {{item1.multiArray[2][item1.val[2]]}}
          
        
      
    

  
index.wxss
.picker-box {
  margin-top: 0rpx;
  width: 100%;
  position: fixed;
  top: 0;
}

.skill-picker {
  height: 80rpx;
  background-color: rgba(0, 121, 132, 0.8);
  box-shadow: 0rpx 5rpx 16rpx rgba(0, 0, 0, 0.05);
}

.skill-title {
  line-height: 80rpx;
  text-align: center;
  vertical-align: middle;
  color: white;
  font-size: 36rpx;
  font-weight: bold;
}

.drop-down {
  position: fixed;
  top: 0;
  right: 0;
  margin-top: 18rpx;
  margin-right: 48rpx;
  display: inline-block;
  width: 48rpx;
  height: 48rpx;
  vertical-align: middle;
}
ok
微信小程序免费学习PHP零基础免费学习
本站文章如未注明出处均为原创,转载请注明出处,如有侵权请邮件联系站长。
0/500
Share your thoughts respectfully.