无法单击可单击 div 内的按钮

Had*_*eez 1 html css jsx reactjs chakra-ui

我在 React 中使用 Chakra UI,当我尝试单击可点击框内的按钮时,框的功能正在执行。Z-index 也没有解决这个问题。

我的代码:

<Box
   w="90%"
   h="auto"
   mt="10px"
   position="relative"
   key={index}
   borderWidth="1px"
   borderRadius="lg"
   onClick={() =>
   history.push(`/products/${item.cat_name}/${item.id}`)}
>
 <h1 className={styles.heading_bold}>{item.cat_name}</h1>
<Button position="absolute" top="3" right="3" zIndex="0"> //Button not able to click
 Options
</Button
</Box>
Run Code Online (Sandbox Code Playgroud)

代码沙盒链接

Imr*_*her 5

onClick不应该是 onclick。

   <Button
        onClick={() => console.log("button clicked")} // Typo fixed
        position="absolute"
        top="3"
        right="3"
        zIndex="0"
      >
Run Code Online (Sandbox Code Playgroud)

这是CodeSandbox: https://codesandbox.io/s/debuuge-lwio5

另请注意,在 soButton is内部,Box第一个Button处理程序被调用,然后Box单击按钮后也会调用处理程序。

要阻止事件传播,您可以使用以下代码。

  <Button
        onClick={(e) => {
          e.stopPropagation();
          console.log("button clicked");
        }}
        position="absolute"
        top="3"
        right="3"
        zIndex="0"
      >
Run Code Online (Sandbox Code Playgroud)

现在,每当您单击按钮时,只会调用它的处理程序,并且您将button clicked在输出中看到。