el-select既能输入又能选择
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <el-select multiple filterable collapse-tags v-model= "buildId" clearable remote :remote-method= "searchBuildsClick" placeholder= "请输入电站名称" @focus= "searchBuildsClick" style= "width: 255px; margin-left: 10px" > <el-option v- if = "optionsBuilds.length > 0" disabled> <el-checkbox v-model= "checked" @change= "selectAll" style= "text-align: right; width: 100%; padding-right: 10px" >全 选</el-checkbox > </el-option> <el-option v- for = "item in optionsBuilds" :key= "item.buildId" :label= "item.buildName" :value= "item.buildId" > </el-option> </el-select> |
searchBuildsClick(value) { if (value instanceof Event) { value = ""; } const [_province = "", _city = "", _area = ""] = this.optionsCity; this.$post(xxxxxx, { page: 1, size: 3000, provinceCode: _province, cityCode: _city, areaCode: _area, buildName: value || "", }) .then((res) => { if (res.status == 1) { this.optionsBuilds = res.data.rows; let length = this.buildId.length; if (length < this.optionsBuilds.length) { this.checked = false; } else { try { let tempData = []; this.buildId.forEach((item, index) => { let result = this.optionsBuilds.find( (ele) => ele.buildId == item ); if (!result) { throw new Error("暂停"); } else { tempData.push(result); } }); if (tempData.length >= this.buildId.length) { this.checked = true; } } catch (err) { console.log("已跳出循环"); this.checked = false; } } } }) .catch((err) => {}); },
1 2 3 4 5 6 7 8 9 10 | selectAll() { this .buildId = []; if ( this .checked) { this .optionsBuilds.map((item) => { this .buildId.push(item.buildId); }); } else { this .buildId = []; } }, |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现