Javascript 在Angular 2/Ionic 2中访问表单中的选定对象属性
我在Javascript 在Angular 2/Ionic 2中访问表单中的选定对象属性,javascript,angular,ionic2,Javascript,Angular,Ionic2,我在@Page中几乎没有select输入,除了存储所选选项的值,如{project.title},我还需要返回另一个所选对象属性,如{{project.id}或整个对象 如果我使用for ex.(change)='DoThing($event),它只返回带有project.title的字符串。我不能把{{object.id}},它会生成运行时错误 我使用的代码: <ion-item> <ion-label>Project</ion-label>
@Page
中几乎没有select输入,除了存储所选选项的值,如{project.title}
,我还需要返回另一个所选对象属性,如{{project.id}
或整个对象
如果我使用for ex.(change)='DoThing($event)
,它只返回带有project.title
的字符串。我不能把{{object.id}}
,它会生成运行时错误
我使用的代码:
<ion-item>
<ion-label>Project</ion-label>
<ion-select [(ngModel)]="newTrackedTime.project" (change)='DoThing()'>
<ion-option *ngFor='#project of myProjects' value="{{project.title}}">{{project.title}}</ion-option>
</ion-select>
</ion-item>
项目
{{project.title}
我相信这应该是可行的,但在查阅了一些ANG2表单教程之后,我不清楚如何做到这一点。谢谢 您不能从外部引用由
*ngFor
创建的项目
您可以使用从$event
获取的project.title
从myProjects
中查找项目。我想最好将id
分配给value
value="{{project.id}}"
然后从$event
获取项目.id
<ion-item>
<ion-label>Project</ion-label>
<ion-select [(ngModel)]="newTrackedTime.project" (change)='DoThing($event)'>
<ion-option *ngFor='#project of myProjects' value="{{project.id}}">{{project.title}}</ion-option>
</ion-select>
</ion-item>
您不能从外部引用由
*ngFor
创建的项目
您可以使用从$event
获取的project.title
从myProjects
中查找项目。我想最好将id
分配给value
value="{{project.id}}"
然后从$event
获取项目.id
<ion-item>
<ion-label>Project</ion-label>
<ion-select [(ngModel)]="newTrackedTime.project" (change)='DoThing($event)'>
<ion-option *ngFor='#project of myProjects' value="{{project.id}}">{{project.title}}</ion-option>
</ion-select>
</ion-item>
您可以尝试以下方法:
<ion-select [(ngModel)]="newTrackedTime.project" (change)='DoThing()'>
<ion-option *ngFor='#project of myProjects'
[attr.value]="project.title">{{project.title}}</ion-option>
</ion-select>
但是
project
仅在选项中的ngFor
级别可用。您可以尝试以下操作:
<ion-select [(ngModel)]="newTrackedTime.project" (change)='DoThing()'>
<ion-option *ngFor='#project of myProjects'
[attr.value]="project.title">{{project.title}}</ion-option>
</ion-select>
但是
project
仅在选项中的ngFor
级别可用…为您的离子选择一个名称
并将其传递给DoThing()
:
您将获得整个select DOM对象,您可以探索其子对象以找到选中的对象及其属性为您的
离子选择
命名并将其传递给DoThing()
:
您将获得整个select DOM对象,您可以探索其子对象以找到选中的对象及其属性错误消息是什么?@ThierryTemplier:When我将{project.id}放入(change)='DoThing():
browser_adapter.ts:73异常:错误:未捕获(承诺中):模板解析错误:解析器错误:获取插值({{})其中表达式应位于中的[DoThing({{project.id}}])的第8列ModalAddtimePage@14:57(“em>Project](change)='DoThing({{Project.id}})>错误消息是什么?@ThierryTemplier:当我将{{Project.id}}放入(change)时,='DoThing()':browser_adapter.ts:73异常:错误:未捕获(承诺中):模板解析错误:解析器错误:在中的[DoThing({{project.id}}])的第8列中获得了插值({{}}),其中表达式应位于第8列ModalAddtimePage@14:57(“em>Project](change)='DoThing({{Project.id}})“>这是一个有点复杂的解决方案,但无论如何谢谢!这是一个有点复杂的解决方案,但无论如何谢谢!谢谢你解释那个错误,我希望有翻译:)谢谢你解释那个错误,我希望有翻译:)