• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

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

php 搞代码 3年前 (2022-02-28) 27次浏览 已收录 0个评论
文章目录[隐藏]

实现

咱们要实现的目标是 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

<code class="wxml"><view>
  
  <!-- 循环 -->
  <block wx:for="{{form}}" wx:for-index="index1" wx:for-item="item1">
    <view>{{item1.name}}--{{item1.type}}--{{item1.field}}--{{item1.val}}</view>
    <!-- //input -->
    <view wx:if="{{item1.type=='input'}}">
      {{item1.name}}:<input name="{{item1.field}}" value="{{item1.val}}" placeholder="请输出{{item1.name}}"/>
    </view>
    <!-- 多筛选 -->
    <view class="picker-box" wx:if="{{item1.type=='dx'}}">
      <view class='skill-picker'>
        <picker mode="multiSelector" bindchange="bindMultiPickerChange" bindcolumnchange="bindMultiPickerColumnChange" value="{{item1.val}}" range="{{item1.multiArray}}" data-iid="{{index1}}">
          <view class="skill-title">
            {{item1.multiArray[0][item1.val[0]]}},
            {{item1.multiArray[1][item1.val[1]]}},
            {{item1.multiArray[2][item1.val[2]]}}
          </view>
        </picker>
      </view>
    </view>

  </block>
</view>

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零根底收费学习

欢迎关注搞代码gaodaima网的公众号:子枫的微妙世界,取得独家整顿的学习资源和日常干货推送。
如果您对我的其余专题内容感兴趣,中转我的集体博客:www.wangmingchang.com 。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:小程序-form可视化布局之input和picker

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址