ajaxCascader支持input click实现区域选择,不支持输入搜索,改下ajaxCascader.js文件
第一处:增加自定义事件 inputkeypress
Private.prototype.inputkeypress = function(){
let store = this.store;
let param = this.param;
let _this = this;
let _url = "https://xxx";
// 监听 input 点击事件
store.input.keypress(function(event) {
if(event.which===13){
event.preventDefault();
let inputValue = $(this).val();
$.ajax({
url:_url,//搜索的url
type:'post',
data: {
"reg_name":inputValue
},
headers: {
Authorization: layui.data('layuiAdmin').Authorization
},
success:function(res){
if(res.code==0){
_this.clearModel();
let _data = res.data;
let areaData = [];
areaData = _data.map(item=>{
item.searchName = item.name;
item.label = item.full_name;
item.value = item.code;
item.hasChild = false;
return item;
});
_this.liHtml(areaData);
store.model.slideDown(_this.param.time)
}else if(res.code==1001){
}
}
});
}
})
}
第二处:
this.disabled()
.then(res => {
this.inputClick(options)
this.inputkeypress();//增加
this.inputHover()
this.liClick()
this.liHover()
this.modelHandle()
if (param.search.show) {
this.handleSearch()
}
})
这样能实现输入搜索。