el-select多选可搜索,如何去除搜索条件前后空格
时间: 2024-10-10 07:12:21 浏览: 82
在 Vue 的 Element UI 中,`el-select` 组件的多选模式并支持搜索功能,如果你想移除搜索框输入时的前后空格,你可以通过自定义事件监听用户的输入,并在触发搜索前清理掉多余的空格。下面是一个简单的示例:
```html
<template>
<el-select v-model="selectedValues" placeholder="请选择" filterable clearable multiple>
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</template>
<script>
export default {
data() {
return {
selectedValues: [],
options: ... // 你的选项数组
};
},
methods: {
handleSearch(query) {
this.selectedValues = this.options.filter(option => option.label.toLowerCase().includes(query.trim().toLowerCase()));
}
},
watch: {
$refs['el-select'].$refs.input({ immediate: true, handler(newVal, oldVal) {
if (newVal !== oldVal) {
this.handleSearch(newVal);
}
}})
}
};
</script>
```
在这个例子中,`handleSearch` 方法会在用户输入后立即调用,`trim()` 函数用于移除字符串首尾的空格,`toLowerCase()` 则确保搜索时不区分大小写。当 `v-model` 的值变化时,会自动触发这个处理过程。
阅读全文