我的HTML:
<input list="tasks" id="selected-task" [(ngModel)]=query (keyup)=filter() name="tasks" class="select-project">
<datalist id="tasks" #tasksDataList >
<option *ngFor="let item of taskList" (click)="select(item)" >{{item.title}}</option>
</datalist>
在我的组件中:
select(item) {
this.query = item;
this.taskList = [];
}
在datalist中我显示所有item.titles,当我选择一个时,我需要将item.id保存在变量中,但我无法从所选项目中访问id值。 我尝试过:
select(item:myClass) {
this.query = item.title;
this.id = item.id;
this.taskList = [];
}
但是显示然后id未定义。
那么当用户从datalist中选择一个项目如何在变量中保存所选项目的id时,是否有任何建议?
答案 0 :(得分:0)
经过多次尝试,我刚刚得出结论,角度和数据主义(HTML5)不能很好地协同工作。如果您只想选择字符串,那就没关系,但如果您想使用像我这样的对象,您就无法达到预期的效果。另一种方法是使用select和之后使用ul与列表项,它们从隐藏的选择中获取数据。所以基本上还有更多的工作,但这是唯一的方法:)