【问题标题】:how to bind click event to a particular id of a div in a loop in angular2如何在angular2的循环中将点击事件绑定到div的特定id
【发布时间】:2017-10-22 05:19:18
【问题描述】:

点击id="buttonitemid0"时如何改变id="itemid0"的文字?

app.component.ts
-----------------
   bb = 'cat';
changeText(index){

}
     app.component.html
    -----------------------------

        <div class="col-xs-2" *ngFor="let item of items;let k=index;">
        <div class="col-xs-12" id="itemid{{index}}">aa</div>
        <button type="button" id="buttonitemid{{index}}" (click)="changeText(index)">btnn</button>
    </div>

【问题讨论】:

    标签: angular


    【解决方案1】:

    只需将索引存储在组件中的一个字段中,然后绑定到该字段

    app.component.ts

    clickedIdx :number;
    changeText(index){
      this.clickedIdx = index;
    }
    

    app.component.html

    <div class="col-xs-2" *ngFor="let item of itmes"></div>
        <div class="col-xs-2" *ngFor="let item of items;let k=index;">
        <div class="col-xs-12" id="itemid{{index}}">aa</div>
        <button type="button" id="buttonitemid{{clickedIdx}}" (click)="changeText(k)">btnn</button>
    </div>
    

    【讨论】:

    • 你能帮忙解决这个问题吗stackoverflow.com/questions/46855627/…
    • 如何将一些其他数据传递给 id="itemid0" 例如;- 当我们点击 buttonitemid0 时出现 bb。
    • 我没有看到问题和您的答案有任何变化,因为单击相应的 buttonitemid0 时文本不会更改 id-itemid0。
    • 你能告诉我方法 changeText(index){ this.clickedIdx = index;当点击相应的按钮时,将文本“aa”更改为文本“bb”?抱歉,它不起作用。
    • aabb 应该从哪里来?似乎是任意的。老实说,我不知道这个问题是关于什么的。
    猜你喜欢
    • 2018-07-27
    • 1970-01-01
    • 2017-05-17
    • 1970-01-01
    • 2014-09-04
    • 1970-01-01
    • 2014-07-04
    • 2013-06-21
    • 2011-09-17
    相关资源
    最近更新 更多