微信小程序开发者小程序微信小程序

小程序实战入门009---小程序表格实现,小程序table实现

2017-09-15  本文已影响2002人  编程小石头666

点击下面网址进入系列教程

零基础入门小程序系列教程

小程序默认是不支持table表格的,如果我们想实现小程序表格效果,就得自己拼凑。实现方案有很多,不过个人感觉通过form和input标签来实现是比较好的方式。

Paste_Image.png

下面来看下实现思路

一,首先看index.wxml文件

<!--index.wxml  -->
<view class="root">
  <form bindsubmit="formSubmit">
    <text>求和表格</text>
    <view class='table'>
      <view class="section-top">
        <input type="text" placeholder="数据" class="input-top " disabled />
        <input type="text" placeholder="A" class="input-top " disabled />
        <input type="text" placeholder="B" class="input-top " disabled />
        <input type="text" placeholder="计算结果" class="input-top end " disabled />
      </view>
      <view class="section2">
        <input type="text" placeholder="加法" class="input2 " disabled />
        <input type="digit" class="input2" placeholder="" maxlength='11' name="massA1" />
        <input type="digit" class="input2" placeholder="" maxlength='11' name="massB1" />
        <input type="text" class="input2 end2" disabled name="massSum1" value='{{massSum1}}' />
      </view>
      <view class="section3">
        <input type="text" placeholder="除法" class="input3 " disabled />
        <input type="digit" class="input3" placeholder="" maxlength='11' name="massA2" />
        <input type="digit" class="input3" placeholder="" maxlength='11' name="massB2" />
        <input type="text" class="input3 end3" disabled name="massSum2" value='{{massSum2}}'/>
      </view>
    </view>
    <view class='buttonAll'>
      <button class="submitone" formType="submit" size="mini" hover-class='button-hover-class' type='primary'>计算</button>
      <button class="submittwo" formType="reset" size="mini" hover-class='button-hover-class' type='warn'>清零</button>
    </view>
  </form>
  <view class='title'>
    小程序不支持table标签,这里我们自己通过form和input来实现表格。有问题加
    <text class="wechat">微信2501902996</text>
  </view>
</view>

二,再来看index.wxss文件

/*index.wxss  */
/*实现子控件居中显示  */
.root {
  display: flex;
  flex-direction: column;
  align-items: center;
}

/*顶部标题  */

.title {
  font-size: 34rpx;
  margin: 40rpx;
}

.wechat {
  font-size: 44rpx;
  color: red;
}

/*表格布局  */
.table{
  border: 1px solid gray;
  width: 600rpx;
}
/*第一行样式  */
.section-top {
  display: flex;
  width: 600rpx;
  flex-direction: row;
}

.input-top {
  border-right: 1px solid gray;
  height: 50rpx;
  width: 150rpx;
  color: #000;
  font-weight: 800;
  font-size: 14px;
}
.end{
  border-right: 0px;
}
/*第二行样式  */
.section2 {
  display: flex;
  width: 600rpx;
  border-top: 1px solid gray;
  flex-direction: row;
}

.input2 {
  border-right: 1px solid gray;
  height: 50rpx;
  width: 150rpx;
  color: #000;
  font-weight: 800;
  font-size: 14px;
}
.end2{
  border-right: 0px;
}
/*第三行样式  */
.section3 {
  display: flex;
  width: 600rpx;
  border-top: 1px solid gray;
  flex-direction: row;
}

.input3 {
  border-right: 1px solid gray;
  height: 50rpx;
  width: 150rpx;
  color: #000;
  font-weight: 800;
  font-size: 14px;
}
.end3{
  border-right: 0px;
}



.section {
  display: flex;
  width: 700rpx;
  flex-direction: row;
}

/*表格最左列名称  */

.input-left1 {
  border: 1px solid gray;
  height: 50rpx;
  width: 170rpx;
  color: #000;
  font-weight: 800;
  font-size: 14px;
}


.input-text {
  border: 1px solid gray;
  height: 30px;
  width: 20px;
  color: #000;
  font-weight: 800;
  font-size: 14px;
}

.inputtwo {
  margin-top: 2%;
}

.buttonAll {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-top: 35rpx;
  margin-bottom: 50rpx;
}

.submitone {
  vertical-align: middle;
  display: table-cell;
}

.submittwo {
  vertical-align: middle;
  display: table-cell;
}

/* 按钮提交颜色 */

.button-hover-class {
  background-color: red;
}

.resTitle {
  font-size: 35rpx;
}

到这里我们就可以实现小程序表格效果了

009GIF.gif

简单说明下

// index.js
Page({
  data: {
   
  },

  // 检测是否为零
  check0: function () {
    wx.showModal({
      title: "被除数不能为零!",
      showCancel: "ture",
      confirmText: "重新输入",
      confirmcolor: "#ccc",
    })
  },

  // 表单计算
  formSubmit: function (e) {
    var that=this;
    //获取输入值
    var massA1 = e.detail.value.massA1;
    var massB1 = e.detail.value.massB1;
    var massA2 = e.detail.value.massA2;
    var massB2 = e.detail.value.massB2;

    var massSum1 = 0.0;//求和
    var massSum2 = 0.0;//除法的结果

    if (massB2 == 0) {
      this.check0();
      return false;
    }

    massSum1 = parseInt(massA1) + parseInt( massB1);
    massSum2 = parseInt(massA2) / parseInt(massB2);

    console.log("massSum1:" + massSum1);
    console.log("massSum2:" + massSum2);
    // 给结果列赋值
    this.setData({
      massSum1: massSum1+"",
      massSum2: massSum2+""
    });
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})

结语

系列教程

关于源码

如果你有关于微信小程序的问题。

你也可以关注我的个人微信号,每天定期推送小程序最新开发技术,优秀源码,各种干货,我也会定期的更新我的小程序实战入门系列课程的源码

20161125154110368.jpg

关注上面微号回复1可以加小程序学习微信群,群里和大家交流学习,一起进步
有问题加我微信:2501902696(备注小程序)

上一篇 下一篇

猜你喜欢

热点阅读