2

我有下表:在此处输入图像描述

行以动态方式绘制,还有用于删除每一行的按钮。

<span className="ms-Table-cell">
  <div>
    <IconButton
      onClick= { this._removeItemFromDetail }
      id={ detail.Id.toString() }
      iconProps={ { iconName: 'Cancel' } }
      title='Delete' />
  </div>  
</span>

private _removeItemFromDetail(e) {
    console.log("e.target",e.target);
}

问题是每次我单击控制台中的删除按钮时,它都会显示:

在此处输入图像描述

因此,我无法访问 Button Id 属性,但这仅在我发布 Webpart 时发生。有谁知道如何修复它?

谢谢!

4

1 回答 1

7

在 IconButton 的 onClick 中,您可以编写以下内容;

onClick={() => {this._removeItemFromDetail(detail.Id)}}

这应该允许您接受 ID 作为参数。如果您仍然需要 _removeItemFromDetail 方法中的“事件”,您可以按如下方式添加它;

onClick={(event) => {this._removeItemFromDetail(event, detail.Id)}}

这意味着你的方法看起来像这样;

private _removeItemFromDetail(event, itemId) {
    console.log("itemId: " + itemId); 
}
于 2017-11-15T12:38:53.333 回答