guy*_*oni 5 javascript php vue.js element-ui element-io
当输入没有结果时,我想显示无结果消息。
在其他项目中,我将其作为建议框中的选项(不可选择):
但是,使用 element-ui 自动完成功能,搜索图标消失后,下拉菜单也会消失:
对于这个组件我无法做到这一点。任何想法?
我的代码如下所示:
模板:
<el-form ref="addressForm" :inline="true" :model="formData">
<el-form-item prop="city">
<el-autocomplete
class="inline-input"
v-model="formData.cityInput"
:fetch-suggestions="getCities"
placeholder="City"
:trigger-on-focus="false"
:clearable="true"
@select="handleSelectCity"
@clear="clearCity"
size="small"
></el-autocomplete>
</el-form-item>
:
:
<el-form-item>
<el-button type="primary" @click="onSubmit" size="small">
Search
</el-button>
</el-form-item>
</el-form>
Run Code Online (Sandbox Code Playgroud)
脚本:
export default {
data() {
return {
formData: {
cityInput: "",
city: "",
:
:
},
}
},
methods: {
getCities(query, callback) {
this.clearCity();
// Ajax call to obtain results for autocomplete
axios.get(
"/cities", {
query: query
})
.then(
response => {
callback(response.data);
}
);
},
handleSelectCity(item) {
this.formData.city = item.value;
},
clearCity() {
this.formData.city = "";
},
:
:
:
}
};
Run Code Online (Sandbox Code Playgroud)
PHP 代码:(Laravel)
public function getCities($query)
{
$res = DB::connection('mainDb')
->table('offices')
->where('city', 'like', $query . '%')
->select('city AS value')
->distinct()
->get();
return $res;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5994 次 |
| 最近记录: |