【问题标题】:How to get other values of a selected value in Angular 10如何在Angular 10中获取选定值的其他值
【发布时间】:2021-01-05 17:38:15
【问题描述】:

我有一个数组:

export const Glcode = [
    { id: 1, Type: 'Asset', Name: 'Cash at Head Office', code: '10018' },
    { id: 2, Type: 'Asset', Name: 'POS ACCOUNT ', code: '10432' },
    { id: 3, Type: 'Asset', Name: 'Cash With Bank', code: '10433'},
    { id: 4, Type: 'Custom', Name: 'Cash With Bank ', code: '10436'},
]

而且我的 HTML 代码有一个选择标签:

<div class="form-group row">
  <label for="gl-code" class="col-sm-2 control-label">GL Name</label>
  <div class="col-sm-3">
    <input type="text" style="margin-left: 25px;" placeholder="Enter the GL name" class="form-control"
           data-min-length="1"
           name="journal.glname" [(ngModel)]="journal.glname" (input)="filterNumber()" list="glcode"
           data-relatives='#chained_relative' data-chained-relatives='true' (change)="selectGL($event.value)">

    <datalist id="glcode">
      <option *ngFor="let i of glcode" [value]="i.Name">{{i.Name}}</option>
    </datalist>
  </div>

  <label for="gl-code" class="col-sm-2 control-label">GL Type:</label>
  <div class="col-sm-4 form-group">
    <div
      list="glcode">
    </div>
  </div>
</div>

<div class="form-group">
  <label style="margin-left: -13px;" for="gl-name" class="col-sm-2 control-label">GL Number:</label>
  <div class="col-sm-10">
    <div id="glname" name="glname"></div>
  </div>
</div>

<label for="gl-code" class="col-sm-2 control-label">GL Type:</label>
<div class="col-sm-4 form-group">
  <div
    list="glcode">
  </div>
</div>
</div>

<div class="form-group">
  <label style="margin-left: -13px;" for="gl-name" class="col-sm-2 control-label">GL Number:</label>
  <div class="col-sm-10">
    <div id="glname" name="glname"></div>
  </div>
</div>

还有我的 TypeScript 代码:

glcode = Glcode
btnDisabled = false;

selectGL(data){
  console.log(this.glcode[data].code) 
}

我想自动设置,如果我选择一个glcode.Name,对应的glcode.Typeglcode.code会自动显示。 例如,如果我在下拉列表/选择选项中选择“POS ACCOUNT”,10432Asset 将分别显示在 GL Number 和 GL Type 标签下 谢谢

【问题讨论】:

标签: arrays angular for-loop html-select key-value


【解决方案1】:

您在问题中提到了一个下拉列表,但您发布的 HTML 中没有一个下拉列表?

但是,如果您希望在从下拉列表中选择项目时自动填充字段,您可以使用 *ngFor 循环遍历下拉列表中的项目,然后使用 ngModel 将下拉列表中的选定项目绑定到变量(我将其称为 selectedItem),然后您将字段设置为链接到 selectedItem 的字段,例如:

 <label for="gl-code" class="col-sm-2 control-label">GL Type:</label>
            <div class="col-sm-4 form-group">
                <div 
               list="glcode" > {{selectedItem.glCode}}
            </div>

您必须进行 nullchecks 以确保没有中断,但这应该对您有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-16
    • 1970-01-01
    • 2020-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-23
    • 2021-03-25
    相关资源
    最近更新 更多