我在表格单元格上有一个可以正确触发的 onClick (React) 处理程序,但是我想保留标签上有 href
为您提供的“在新选项卡中打开”功能。
尝试将两者组合在一个元素上当然不会按预期工作:
<td onClick={this.someFunction} href="someLink">
...some content
<td>
以前,我研究过在表格单元格内嵌套一个 anchor 标记,跨越整个高度,因此每当右键单击单元格的内容时,我可以“在新选项卡中打开”并仍然保留 onClick表格单元格元素上的
处理程序。然而,这种方法存在各种问题,outlined here .
TLDR:覆盖会导致其他问题。解决方案存在各种兼容性问题。
所以我放弃了这种方法,转而采用上面解释的方法。想法/建议? 有没有办法在不使用 anchor /href 的情况下使用“在新选项卡中打开”选项?
最佳答案
这里有两个选项,您可以使用 JS 在新窗口/选项卡中打开它:
<td onClick={()=> window.open("someLink", "_blank")}>text</td>
但更好的选择是使用常规链接,但将其设置为表格单元格:
<a style={{display: "table-cell"}} href="someLink" target="_blank">text</a>
关于javascript - 在 React 中使用 onClick 处理程序维护 href "open in new tab",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45046030/