关于ie下带搜索的下拉BUG造成的原因:
IE下的Input不支持readonly 无法失去焦点 但element ui这时候默认已经隐藏掉下拉项了 所以无法搜索
解决办法:通过visible-change事件判断当element ui 隐藏下拉项时 手动使IE下input失去焦点
具体实现方式:
- 1、vue文件
<el-form-item label="省" prop="consigneeProvince">
<el-select v-model="pickForm.consigneeProvince"
filterable
ref="consigneeProvince"
clearable
placeholder="请选择省"
@visible-change="inputBlur($event,'consigneeProvince')"
@change="handleChangeProvince(pickForm.consigneeProvince)">
<el-option v-for="item in consigneeProvinceOption"
:key="item.value"
:label="item.label"
:value="item.value"></el-option>
</el-select>
</el-form-item>
- 2、methods
/**
* 下拉搜索隐藏失去焦点(IE下)
*/
inputBlur(flag,refName){
// 隐藏下拉时失去焦点(针对ie)
if(!flag){
this.$refs[refName].$children[0].blur();
}
}
注:visible-change为element ui 下拉项展开收起触发的方法 下拉项隐藏时第一个参数为false