当前位置: 首页 > 知识库问答 >
问题:

*如何使用索引将数组中的每个项绑定到ngModel

黎同
2023-03-14

==最终更新==

http://plnkr.co/edit/WKRBB7?p=preview

因为我在表单中使用ngModel,所以我必须添加nameattribue。

我的错误是,我使用了与它的名称相同的值。

<form #myform="ngForm">
    <table>
      <tr *ngFor="let staff of staffs">
         <td><input name="name" [(ngModel)]="staff.name">{{staff.name}}</td>
      </tr>
    </table>
</form>

当我换到下面,我的问题就解决了。

<form #my2form="ngForm">
   <table>
      <tr *ngFor="let staff of staffs;let i = index">
         <td><input name="staff.{{i}}.name" [(ngModel)]="staff.name">{{staff.name}}</td>
      </tr>
    </table>
</form>

==========

对不起,我不记得为什么使用名称[$index]。名称而不是x。名字。

也许几年前,我在使用x.Name时遇到了一些错误,然后养成了使用索引的习惯。

---更新-----

我需要一个内联编辑表,双向绑定。

<table>
   <tr *ngFor="let x of names">
     <td><input [(ngModel)]="x.Name">{{x.Name}}</td>
   </tr>
</table>

let names = [
{ Name:'jim'},
{ Name:'tom'}
];

最初的页面显示:

blank text field; jim

blank text field; tom

我在第一个文本字段中键入'aaaaaa'后,它变成:

aaaaaa; aaaaaa

blank text field; tom

我认为页面最初会显示:

jim; jim
tom; tom

我的问题是,为什么初始值会丢失?

共有2个答案

张昊穹
2023-03-14

在你的情况下,先生,如果你使用*ngFor作为循环,那么我不认为你需要索引。这是修改后的代码。

<table>
       <tr *ngFor="let x of names;let i = index;">
         <td>{{ i+ 1 }}</td>
         <td><input [(ngModel)]="x.Name">{{x.Name}}</td>
       </tr>
    </table>

或者你能试试这个吗

<table>
           <tr *ngFor="let x of names;let i = index;">
             <td>{{ i+ 1 }}</td>
             <td><input [value]="x.Name" [(ngModel)]="x.Name">{{x.Name}}</td>
           </tr>
        </table>
松刚豪
2023-03-14

它应该是[ngModel]=“…”

<table>
   <tr *ngFor="let x of names;let i = index;">
     <td>{{ i+ 1 }}</td>
     <td><input [(ngModel)]="names[i].Name">{{x.Name}}</td>
   </tr>
</table>

 类似资料:
  • 问题内容: 我正在寻找一种JavaScript数组插入方法,其样式为: 最好是在jQuery中,但此时任何JavaScript实现都可以。 问题答案: 您想要的是本机数组对象上的函数。 将插入到指定的索引处(首先删除项目,也就是插入)。 在此示例中,我们将创建一个数组并将一个元素添加到索引2中:

  • 这里的问题是什么?。我正在尝试实现图数据结构,使用邻接列表,通过使用来自util包的集合。这里 包含一些整数的LinkedList数组。LinkedList的每个元素都包含另一个类型为:node的LinkedList。 但在编译过程中,它表示不兼容类型。如何解决这个问题?

  • 我有通过ajax调用存储数据的数组索引。我只想对数组中的一个索引进行验证。这是我的代码。 我只需要验证为 来自前端的数组如下所示

  • 我需要在OpenAPI中用数组定义一个JSON响应。数组始终包含2个项目,第一个始终是数字,第二个始终是字符串。 我发现JSON模式通过在中传递项目列表而不是单个对象(源代码)来支持这一点,但OpenAPI明确禁止这一点,并且只接受单个对象(源代码)。如何在OpenAPI中表达?

  • 问题内容: 我有一个应用程序,其中将json中的数据显示到listview中,现在想在listview上应用搜索功能。但是每当我在editbox中输入内容时,错误数组索引就会超出界限。请帮助我进行排序。 HomeActivity 适配器类 问题答案: 尝试这种方式,希望这将帮助您解决问题。 Home Fragment 转接器类别

  • 我想使用Linux内核信号将事件的发生从模块异步传达到用户空间应用程序。我在C中以以下方式工作: 现在,我想转到C实现。更具体地说,我想使用助推::function/助推::bind将sa_sigaction绑定到一个方法。但是,我很难获得正确的函数签名。 下面是InputCapture类的定义: 这是修改后的sa_sigaction: 但是,我收到以下编译错误: 在/home/asymingt/