src/views/exam/paper/list.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/views/exam/personalRandomTemplate/list.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/views/exam/paper/list.vue
@@ -50,7 +50,12 @@ <el-form-item label="考生:" prop="menuIds" required> <!-- <el-cascader v-model="form.menuIds" :options="options" :props="{ multiple: true }" clearable collapse-tags></el-cascader> --> <!-- 改成下拉 --> <el-select v-model="form.menuIds" multiple clearable placeholder="请选择"> <el-select v-model="form.menuIds" multiple clearable placeholder="请选择" collapse-tags @change="changeSelect"> <div class="checkboxWrapper"> <el-checkbox v-model="checked" @change.native="checkChange"> 全选 </el-checkbox> </div> <el-option v-for="item in options" :key="item.id" :label="item.realName" :value="item.id"></el-option> </el-select> </el-form-item> @@ -80,6 +85,7 @@ components: { Pagination }, data () { return { checked: false, depts: [], form: { menuIds: [], @@ -161,6 +167,27 @@ } }) }, checkChange() { let resValues = this.options.map(item => item.id); // 如果checkbox为false,则为反选,选择数组为空 if (!this.checked) { this.form.menuIds = []; } else { // 如果checkbox为true,则为全选,选择数组添加所有数据 let res = [...resValues]; this.form.menuIds = res; } }, changeSelect(val) { let resValues = this.options.map(item => item.value); // 如果选择数组长度等于options的长度,checkbox设为true,反之设为false if (val.length === resValues.length) { this.checked = true; } else { this.checked = false; } this.form.menuIds = val; }, missExam(item) { this.form = { menuIds: [], @@ -170,7 +197,6 @@ } this.dialogVisible = true; this.examPaper = item; console.log('item.id', item.id); userApi.getFailExamUser(item.id).then(res => { this.options = res.response; }) @@ -216,3 +242,9 @@ } } </script> <style lang="scss" scoped> .checkboxWrapper { padding: 8px 20px; border-bottom: 1px solid #ccc; } </style> src/views/exam/personalRandomTemplate/list.vue
@@ -62,7 +62,12 @@ <el-form :model="form" ref="form"> <el-form-item label="考生:" prop="menuIds" required> <!-- <el-cascader v-model="form.menuIds" :options="options" :props="{ multiple: true }" clearable collapse-tags></el-cascader> --> <el-select v-model="form.menuIds" multiple clearable placeholder="请选择"> <el-select v-model="form.menuIds" multiple clearable placeholder="请选择" collapse-tags @change="changeSelect"> <div class="checkboxWrapper"> <el-checkbox v-model="checked" @change.native="checkChange"> 全选 </el-checkbox> </div> <el-option v-for="item in options" :key="item.id" :label="item.realName" :value="item.id"></el-option> </el-select> </el-form-item> @@ -86,6 +91,7 @@ components: { Pagination }, data () { return { checked: false, pickerOptions: { shortcuts: [{ text: '最近一周', @@ -162,6 +168,27 @@ }) }, methods: { checkChange() { let resValues = this.options.map(item => item.id); // 如果checkbox为false,则为反选,选择数组为空 if (!this.checked) { this.form.menuIds = []; } else { // 如果checkbox为true,则为全选,选择数组添加所有数据 let res = [...resValues]; this.form.menuIds = res; } }, changeSelect(val) { let resValues = this.options.map(item => item.value); // 如果选择数组长度等于options的长度,checkbox设为true,反之设为false if (val.length === resValues.length) { this.checked = true; } else { this.checked = false; } this.form.menuIds = val; }, missExam(item) { this.form = { menuIds: [], @@ -170,7 +197,7 @@ limitDateTime: [] } this.examPaper = item; userApi.getFailExamUser(item.id).then(res => { userApi.getFailTemplateUser(item.id).then(res => { this.options = res.response; this.dialogVisible = true; }) @@ -292,3 +319,9 @@ } } </script> <style lang="scss" scoped> .checkboxWrapper { padding: 8px 20px; border-bottom: 1px solid #ccc; } </style>