【问题标题】:Angular check if Button was clicked角度检查按钮是否被点击
【发布时间】:2018-06-26 10:42:04
【问题描述】:

我只想在单击按钮时显示更改的文本值。文本值取决于输入字段,并动态绑定到带有[(NgModel)]="textValue"的文本字段的输入值... 我首先在输入框中输入了一些 ID 号,它直接更改了我的文本。但是我只想在单击按钮后更改带有“ID-value”的文本,并使用我的函数“getChartsData()”调用新的图表数据。

这就是我的 html 的样子:

<input [(ngModel)]="monatConst" placeholder="Demonstrator-ID">
<button class="btn btn-danger float-xl-right mt-1" 
    (click) = "getChartsData()">  Call HTTP Request
  </button> 
<br>
<div *ngIf="monatConst">Chart für Demonstrator mit ID: {{monatConst}} </div><br>

<ngx-charts-bar-vertical
  [view]="view"
  [scheme]="colorScheme"
  [results]="dataArray"
  [gradient]="gradient"
  [xAxis]="showXAxis"
  [yAxis]="showYAxis"
  [legend]="showLegend"
  [showXAxisLabel]="showXAxisLabel"
  [showYAxisLabel]="showYAxisLabel"
  [xAxisLabel]="xAxisLabel"
  [yAxisLabel]="yAxisLabel">
</ngx-charts-bar-vertical>

我怎样才能最好地意识到只有在单击按钮并调用新图表数据后才会更改带有 ID 字段的文本?目前,我用ngModel两种方式绑定了ID变量,直接放到文本字段中,数据绑定{{..}}

【问题讨论】:

  • 您应该将标题从 Angular.js 更改为 Angular,因为您使用的是 Angular v2+

标签: javascript html angular data-binding


【解决方案1】:

我找到了一个更简单的解决方案,这对我来说非常愚蠢;):

<div *ngIf="dataArray?.length>0; else noChartBlock">
    Chart für Demonstrator mit ID: {{monatConst}}
<ngx-charts-bar-vertical
  [view]="view"
  [scheme]="colorScheme"
  [results]="dataArray"
  [gradient]="gradient"
  [xAxis]="showXAxis"
  [yAxis]="showYAxis"
  [legend]="showLegend"
  [showXAxisLabel]="showXAxisLabel"
  [showYAxisLabel]="showYAxisLabel"
  [xAxisLabel]="xAxisLabel"
  [yAxisLabel]="yAxisLabel">
</ngx-charts-bar-vertical>
</div>

<ng-template #noChartBlock>
  <b>There is no data for Demonstrator with ID: {{monatConst}} !</b>
</ng-template> 

我只是将我的 Text 打包到 ngIf 选择器中,以便在找到某些内容时显示文本,否则它会转到 else 模板块... ;P

【讨论】:

    【解决方案2】:

    .html

     <input [(ngModel)]="monatConst" placeholder="Demonstrator-ID">
    <button class="btn btn-danger float-xl-right mt-1" 
        (click) = "getChartsData();setText(monatConst)">  Call HTTP Request
      </button> 
    <br>
    <div *ngIf="Demonstrator_ID">Chart für Demonstrator mit ID: {{Demonstrator_ID}} </div><br>
    

    .ts

       monatConst:any;
       Demonstrator_ID: any;
    
       setText(text){
          this.Demonstrator_ID=text;
        }
    

    【讨论】:

    • 这不起作用,它仍然显示文本,此外,我必须在每次点击后将检查布尔值重置为 false...?
    猜你喜欢
    • 2021-03-08
    • 2013-05-09
    • 2013-07-26
    • 1970-01-01
    • 1970-01-01
    • 2014-12-28
    • 2020-05-23
    • 2014-05-19
    • 1970-01-01
    相关资源
    最近更新 更多