angular - 从文本框中搜索实时数据库并将其显示在选择元素中
问题描述
组件已完成,但客户不满意。目前,我使用文本框在实时数据库中搜索产品,并将结果显示在一个选择元素中,其中数据库 id 和名称构成每个选择选项的值和显示文本,如下所示:
客户基本上希望有一个类似谷歌的搜索(一个元素可见)。将表单提交到 mysql 数据库时,我使用选定的 ID。有没有一种更简单的方法不需要我改变很多(承认......我很懒)。
后端是发送 JSON 的 Django。
这是我当前的组件代码:
eventSearchSupplier(value){
let v=value.trim();
if (v.length<2){return false;}
//search here
this.suppliersservice.searchsupplier(v).subscribe(
data => {
this.suppliers = data['detail'];
this.suppliers.unshift({'id':0,'name':'Select'});
},
(err: HttpErrorResponse) => {
if (err.error instanceof Error) {
//A client-side or network error occurred.
this.commonfunctions.showNotificationMessage('',909,'error');
} else {
this.commonfunctions.showNotificationMessage(err.error.detail,err.status,'error');
}
}
);
}
组件.html
<div class="col-md-3">
<label>Suppliers</label>
<input type="text" class="text-line" placeholder="Enter Name to Search" (input)="eventSearchSupplier($event.target.value)">
</div>
<div class="col-md-3">
<label> </label>
<select class="form-control supplier" formControlName="provider" >
<option *ngFor="let supplier of suppliers" value="{{supplier.id}}">{{supplier.name}}</option>
</select>
</div>
解决方案
推荐阅读
- sql-server - SQL Server:全文索引初始填充性能
- reactjs - 为什么我不能在 useEffect 函数中使用 props 属性?
- c# - 另一个文件中包含的 T4 缩进代码
- node.js - 猫鼬聚合排序无法正常工作
- javascript - Javascript JSON.stringify 更改包含反斜杠的字符串
- python - Pandas pd 没有填充 .append
- python - 在 Cython 中使用 ZMQ
- python - 在 Excel 列中搜索字符串
- java - 如何获取所有消费者队列rabbitMq的列表?
- javascript - SuiteScript 错误 - Catch(e) - e 未定义