Angular 查找未使用*ngFor而选择的单选按钮
我尝试了很多不同的方法:Angular 查找未使用*ngFor而选择的单选按钮,angular,Angular,我尝试了很多不同的方法: <input type="radio" name="group" id="ssnRadio" [checked]="ssn" [(ngModel)]="ssnSelected"> 按钮中包含以下方法: search() { if (this.ssnSelected==true) { console.log( this.ssn); this.user = this._searchServi
<input type="radio" name="group" id="ssnRadio" [checked]="ssn" [(ngModel)]="ssnSelected">
按钮中包含以下方法:
search() {
if (this.ssnSelected==true) {
console.log( this.ssn);
this.user = this._searchService.getUserBySSN(this.ssn);
}
if (this.userIdSelected == true) {
console.log(this.userId);
this.user = this._searchService.getUserById(this.userId);
}
因此,我需要找到所选的单选按钮,以便调用正确的服务,并将使用双向绑定的值传递到服务。您需要订阅表单更改或单个输入更改
<input type="radio"
name="group"
id="ssnRadio"
[checked]="ssn"
[(ngModel)]="ssnSelected"
(change)="doSomething($event)">
如果是正确和错误的情况,您似乎需要复选框 您可以使用下面的
<input type="checkbox" [(ngModel)]="ssnSelected" > SSN Selected
SSN已选定
检查这个
更新:
根据评论,您似乎需要从单选按钮组中选择一个,您可以在下面尝试
@Component({
selector: 'my-app',
template: `<h1>Hello {{name}}</h1>
<label><input type="radio" name="group" value="ssn" [(ngModel)]="groupVal" > SSN</label>
<label><input type="radio" name="group" value="lastname" [(ngModel)]="groupVal" > Last name</label>
<label><input type="radio" name="group" value="role" [(ngModel)]="groupVal" > SSN Role</label>
<br />
<br />
<button (click)="search()" >Search</button>
`
})
export class AppComponent {
groupVal = "ssn";
name = 'Angular';
search(){
switch(this.groupVal){
case "ssn":
console.log("ssn selected");
break;
case "lastname":
console.log("lastname selected");
break;
case "role":
console.log("role selected");
break;
default:
break;
}
}
}
@组件({
选择器:“我的应用程序”,
模板:`Hello{{name}}
SSN
姓
SSN角色
搜索
`
})
导出类AppComponent{
groupVal=“ssn”;
名称='角度';
搜索(){
开关(this.groupVal){
案例“ssn”:
控制台日志(“选择ssn”);
打破
案例“lastname”:
console.log(“选择姓氏”);
打破
案例“角色”:
console.log(“所选角色”);
打破
违约:
打破
}
}
}
更新
希望这有帮助 我有,但我需要它有单选按钮功能。他们只能选择一个复选框,当他们选择另一个复选框时,前一个复选框被取消选中。因此具有单选按钮功能。@Drew1208:根据您的评论更新答案,干杯!!这似乎是正确的路线,但你能详细说明一下吗?
<input type="checkbox" [(ngModel)]="ssnSelected" > SSN Selected
@Component({
selector: 'my-app',
template: `<h1>Hello {{name}}</h1>
<label><input type="radio" name="group" value="ssn" [(ngModel)]="groupVal" > SSN</label>
<label><input type="radio" name="group" value="lastname" [(ngModel)]="groupVal" > Last name</label>
<label><input type="radio" name="group" value="role" [(ngModel)]="groupVal" > SSN Role</label>
<br />
<br />
<button (click)="search()" >Search</button>
`
})
export class AppComponent {
groupVal = "ssn";
name = 'Angular';
search(){
switch(this.groupVal){
case "ssn":
console.log("ssn selected");
break;
case "lastname":
console.log("lastname selected");
break;
case "role":
console.log("role selected");
break;
default:
break;
}
}
}