el-table中进行编辑,添加必填校验

2,318 阅读1分钟

el-table中进行编辑,添加必填校验

el-table中进行编辑,添加必填校验_el-table 表格里面el-input 验证必填_不想学习只想玩的博客-CSDN博客

image.png

<el-form :model="seaList" ref="seaTableForm" :rules="seaList.rules" size="small" class="sea-form">
                <el-table :data="seaList.seaData" stripe style="width: 100%" height="330" size="mini">
                    <el-table-column type="index" label="序号" fixed align='center'>
                    </el-table-column>
                    <!-- <el-table-column label="海区" prop="seaName" align='center'>
                </el-table-column> -->

                    <el-table-column label="海区" align="center">
                        <template slot-scope="scope">
                            <el-form-item :prop="'seaData.' + scope.$index + '.seaAreaName'"
                                :rules="seaList.rules.seaAreaName">
                                <span v-if="(scope.row.isEdit)" class="red-sea">*</span>
                                <el-input size="mini" v-if="(scope.row.isEdit)" v-model.trim="scope.row.seaAreaName"
                                    clearable maxlength="30" placeholder="请输入海区" />
                                <span v-else v-text="scope.row.seaAreaName"></span>
                            </el-form-item>
                        </template>
                    </el-table-column>
                    <el-table-column align='center' label="操作" fixed="right">
                        <template slot-scope="scope">
                            <!-- <el-button @click="handleSeaView(scope.row.id)" type="text" size="small">详情</el-button> -->
                            <el-button v-if="(scope.row.isEdit)" @click="handleSeaSave(scope.row)" type="text"
                                size="small">保存</el-button>
                            <el-button v-else @click="handleSeaEdit(scope.row)" type="text" size="small">编辑</el-button>
                            <el-button v-if="(scope.row.isEdit)" @click="handleSeaCancel(scope.row)"
                                style="color: gray;" type="text" size="small">取消</el-button>
                            <el-button v-else @click="handleSeaDel(scope.row.id)" style="color: red;" type="text"
                                size="small">删除
                            </el-button>
                        </template>
                    </el-table-column>
                </el-table>
            </el-form>

seaList: {
                id: '',
                visible: false,
                title: '',
                searchParams: {
                    seaName: ''
                },
                seaData: [],
                rules: {
                    seaAreaName: [
                        { required: true, message: '请输入海区', trigger: ['change', 'blur'] }
                    ]
                }
            },