Javascript 如果用户没有在多过滤器搜索栏中为选择任何选项,如何在中[(ngModel)]绑定默认的[selected]值

Javascript 如果用户没有在多过滤器搜索栏中为选择任何选项,如何在中[(ngModel)]绑定默认的[selected]值,javascript,angular,angularjs-directive,mean-stack,angularjs-ng-model,Javascript,Angular,Angularjs Directive,Mean Stack,Angularjs Ng Model,问题在于,不必同时使用所有输入字段或选择标记进行筛选,因此有时用户可以保留一个或多个筛选器,而不选择或放置选项/输入。在这种情况下,我希望我的select标记在提交查询时返回默认的[selected]=true选项的值 当我运行应用程序时,[selected]=true选项会正确显示在下拉选择框中,但每当我尝试提交并运行查询而不选择任何其他选项时,[selected]=true选项的值不会被抓取,从而影响整个查询,我必须为搜索栏中的每个标记选择/选择任何选项,即使它被定义为[selected]=

问题在于,不必同时使用所有输入字段或选择标记进行筛选,因此有时用户可以保留一个或多个筛选器,而不选择或放置选项/输入。在这种情况下,我希望我的select标记在提交查询时返回默认的[selected]=true选项的值

当我运行应用程序时,[selected]=true选项会正确显示在下拉选择框中,但每当我尝试提交并运行查询而不选择任何其他选项时,[selected]=true选项的值不会被抓取,从而影响整个查询,我必须为搜索栏中的每个标记选择/选择任何选项,即使它被定义为[selected]=true选项,以正确获取值,这对于我试图构建的过滤器搜索栏来说不是空闲的,而且肯定不是用户友好的

我正在使用[ngModel]绑定输入字段或选择标记的选项&已经使用[value]设置了[selected]=true选项的值=

下图显示并解释了该案例

这是我的简化html文件

<div class="input-group mb-3">

    <select class="" name="numbers-list" [(ngModel)]="number" >
          <option [selected]="true" [value]="defaultValue"> Any </option>
          <option value="1"> 1 </option>
          <option value="2"> 2 </option>
          <option value="3"> 3 </option>
    </select>

    <button(click)="searchNumber()"></button>

</div>

这是简化的服务文件

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable } from 'rxjs';

const baseUrl = 'http://localhost:3000/numbers';

@Injectable({
  providedIn: 'root'
})
export class NumberService {



constructor(private http: HttpClient) { }

    findByNumber(number): Observable<any> {
    return this.http.get(`${baseUrl}?number=${number}`);
  }

}


因此,如果我选择了选项,并且没有将它们保留为默认选项,那么查询和每件事情都会正常工作。我想要的是,如果用户没有在其中一个标记中选择选项,则此选择标记应在提交时自动提供其默认选项值。删除选项中的[selected]=true。您应该基于变量this.number的值来控制所有,这样您就可以

this.numberService.findByNumber(this.number?this.number:this.defaultValue)
或者如果可能,在声明变量编号时

defaultValue="Any"
number: any=this.defaultValue

删除选项中的[selected]=true。您应该基于变量this.number的值来控制所有,这样您就可以

this.numberService.findByNumber(this.number?this.number:this.defaultValue)
或者如果可能,在声明变量编号时

defaultValue="Any"
number: any=this.defaultValue

谢谢你,Eliseo,我试过“号码:any;”ngOnInit:void{this.number=Any}然后将所需选项的[value]设置为数字'1,它对我起了作用感谢您的支持非常感谢Eliseo,我尝试了'number:Any;`&ngOnInit:void{this.number=Any}然后将所需选项的[value]设置为数字'1,它对我起了作用。感谢您的支持,非常感谢