将 value 属性传递给 HTML 标记内的 (click) 属性

Posted

技术标签:

【中文标题】将 value 属性传递给 HTML 标记内的 (click) 属性【英文标题】:pass the value attribute into (click) attribute within HTML tag 【发布时间】:2017-10-14 13:48:43 【问题描述】:

我有以下 html 模板:

<form #topping (change)="updateTopping(topping)">
    <span *ngFor= "let top of toppingOptions">
        top.name 
        top.price.toFixed(2)
        <button type="button" value="top.name-add" (click)="addTopping(top.name)">+</button>
        <button type="button" value="top.name-minus" (click)="minusTopping(top.name)">-</button>
        <br>
    </span>    
</form>

您可能知道错误发生在 Button 标记中。我想将“top.name”传递给 addTopping() 和 minusTopping(),但不知道这样做的正确方法。

提前致谢。

【问题讨论】:

【参考方案1】:

去掉大括号并将参数传递给(click)函数

 <button type="button" value="top.name-add" (click)="addTopping(top.name)">+</button>

【讨论】:

谢谢!假设我想传入实际的 value 属性,我该怎么做?因此,如果 value="Bacon-add",我将如何将 value 属性直接传递到我的 (click)="addTopping(valueAttribute)" 参数中? 试试这个(click)="addTopping(top.name + '-add')"&gt; 谢谢,我是打字稿新手。我才意识到这是一个多么愚蠢的问题.. 嘿嘿别自责。 :D

以上是关于将 value 属性传递给 HTML 标记内的 (click) 属性的主要内容,如果未能解决你的问题,请参考以下文章

我可以将哪些值传递给 f:ajax 标记的 event 属性?

将支持 bean 操作传递给 Facelet 标记文件

无法将方法的头部传递给 React 标记中的事件处理

如何将父控件标记值传递给 ParameterConverter [重复]

将动作侦听器方法作为标记文件属性传递

深入研究浏览器对HTML解析过程