Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何使用循环中的不同选定值在表单标记中填充下拉列表?_Html_Angular - Fatal编程技术网

Html 如何使用循环中的不同选定值在表单标记中填充下拉列表?

Html 如何使用循环中的不同选定值在表单标记中填充下拉列表?,html,angular,Html,Angular,我有一批员工,他们的测试由领导分配。分配测试时,将正确分配所选员工。在重新填充时,Lead可以查看分配给哪个员工的测试 当表格位于表单标记中时,EmployeeID填充正确,但其对应的员工名称不同 若我从表单标签中取出表格,它工作得非常好 员工id和姓名如下所示: {{t.empid}} {{e.employeename} 结果如下截图所示 问题在于,您正在将select的值与t.empid值绑定。这样做的结果是,当您选择一个选项时,其值(即e.employeeid)被设置为t.empid

我有一批员工,他们的测试由领导分配。分配测试时,将正确分配所选员工。在重新填充时,Lead可以查看分配给哪个员工的测试

当表格位于表单标记中时,EmployeeID填充正确,但其对应的员工名称不同

若我从表单标签中取出表格,它工作得非常好

员工id和姓名如下所示:


{{t.empid}}
{{e.employeename}
结果如下截图所示


问题在于,您正在将select的值与
t.empid
值绑定。这样做的结果是,当您选择一个选项时,其值(即
e.employeeid
)被设置为
t.empid

您尚未显示该组件的任何TypeScript代码,但可以尝试向
tests
数组中的对象再添加一个属性,例如
val
。然后使用它绑定ngModel:
[(ngModel)]=“t.val”


还有一个建议-您的代码生成多个具有相同ID的
select
元素,这是您必须避免的。根据“id全局属性定义标识符(id),该标识符(id)在整个文档中必须是唯一的”。如果您仅将
id=“assigned”
用于样式设置,则只需添加一个class属性即可。

如果没有标记,则相同的代码可以正常工作。为什么当代码在标签中时它不工作?你能分享一下TypeScript代码吗,这对重现问题很有帮助。
<form class="cc">
            <table>
                <tbody>
                    <tr *ngFor="let t of tests">
                        <td>
                            {{t.empid}}
                            <select *ngIf="t" id="assigned" name="assignedto" [(ngModel)]="t.empid" class="form-control">
                                <option *ngFor="let e of empids; let i = index" [value]="e.employeeid">
                                    {{e.employeename}}
                                </option>
                            </select>
                        </td>
                    </tr>
                </tbody>
            </table>
        </form>