阅读 67

onclick函数带参数

问题

我想将int i传递给每个列表项的按钮onclick函数.我希望"clickItem"函数的对应列表项将收到0..2.但是事实证明,它总是接受3作为参数.似乎在渲染for循环时未评估clickItem(i)中的变量i.我尝试将其更改为"clickItem(@i)",但仍然相同.我该怎么办? (我正在使用blazor服务器端,.net core 3预览5)

1 @for (int i = 0; i < 3; i++)
2         {
3             
  • item @i
  • 4 }

    解决方案

    这是经典的游戏,但在Blazor的上下文中有点新.

    您需要进行复制,否则lambda会"捕获"循环变量.捕获副本就可以了.

    1 @for (int i = 0; i < 3; i++)
    2 {
    3     int copy = i;
    4     
  • item @i
  • 5 }

     

    原文:https://www.cnblogs.com/stweily/p/15355988.html

    文章分类
    百科问答
    版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
    相关推荐