Vue form必填字段 rules

rules
在这里插入图片描述

<el-form label-width="80px" :model="addForm" status-icon :rules="rules" ref="addForm" style="padding-left: 10px;padding-right: 10px;">
  <el-row>
     <template v-for="(item,index) in addForm.redoList" :key="it.index">
       <el-form-item label="责任部门" :prop="'redoList.'+index+'.cause_parent'" :rules="rules.str">
          <template slot-scope="scope">
               <el-select v-model="item.cause_parent" placeholder="请选择"  style="width: 300px" clearable @change="depart_change(item.cause_parent)" :rules="rules.str">
               <el-option
                  v-for="item in departList"
                  :key="item.value"
                  :label="item.label"
                  :value="item.value"
                ></el-option>
              </el-select>
            </template>
       </el-form-item>
       <el-form-item label="重做原因" :prop="'redoList.'+index+'.cause'" :rules="rules.str">
             <el-select v-model="item.cause" multiple clearable placeholder="请选择" style="width: 300px" :rules="rules.str">
               <el-option
                 v-for="item in causeList"
                 :key="item.value"
                 :label="item.label"
                 :value="item.value"
               ></el-option>
             </el-select>
           </el-form-item>
           
     </template>
   </el-row>
   <br class="row">
   <el-row>
     <el-col :span="10">
       <el-form-item></el-form-item>
     </el-col>
     <el-col :span="10">
       <el-button @click="cancelBtn()">取 消</el-button>
       <el-button type="primary" @click="submitBtn('addForm')">提 交</el-button>
     </el-col>

   </el-row>
</el-form>
    data() {
      return {
        loading: false,
        add_i: 0,
        addForm: {
          redoList: [],
        },
        departList:[],        // 部门配置
        causeList:[],         // 原因配置

        rules: {
          str: [
            {required: true, message: '请选择必填项', trigger: 'blur'}
          ]
        }
      }
    },
 methods: {
       //提交
      submitBtn(formName) {
        var that = this
        that.$refs[formName].validate((valid) => {
          if (valid) {
            that.$confirm('确认提交? 提交之后不能修改 !', '提示', {
              confirmButtonText: '确定',
              cancelButtonText: '取消',
              type: 'warning'
            }).then(() => {
              that.loading = true;
              jQuery.ajax({
                url: "/hismaterial/saveRedo",
                type: "post",
                data: {
                  '_token'   : '{{ csrf_token() }}',
                  'notice_id': that.notice_id,
                  'redoList' : that.addForm.redoList,
                },
                dataType: 'json',
                success: function (res) {
                  that.loading = false;
                  if (res.code == 1) {
                    that.$message({
                      message: res.msg,
                      type: 'success'
                    })
                    //that.getData();
                  } else {
                    that.$message({
                      message: res.msg,
                      type: 'warning'
                    })
                  }

                }
              });
            });
          } else {
            return false;
          }
        });
      },
      //取url里边参数
      RequestParameter() {
        var url = window.location.search; //获取url中"?"符后的字串
        var theRequest = new Object();
        if (url.indexOf("?") != -1) {
          var str = url.substr(1);
          var strs = str.split("&");
          for (var i = 0; i < strs.length; i++) {
            theRequest[strs[i].split("=")[0]] = (strs[i].split("=")[1]);
          }
        }
        return theRequest
      },
 }
  mounted() {
      //url传id传进来
      this.notice_id = this.RequestParameter()["notice_id"];
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值