首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何勾选导航链接中的复选框?

如何勾选导航链接中的复选框?
EN

Stack Overflow用户
提问于 2021-01-05 19:49:12
回答 2查看 185关注 0票数 1

我需要一个在导航链接的复选框,我希望他们彼此独立工作,但复选框不工作。我在bootstrap中使用了表单检查,我认为bootstrap的form.check在导航链接中不起作用,我尝试用form.check替换为简单输入的类型是复选框,但这种方法也不起作用。也许原因在于nav链接,如何解决这个问题?

示例:https://codesandbox.io/s/clever-wave-tyswy?file=/src/App.js

EN

回答 2

Stack Overflow用户

发布于 2021-01-05 20:13:46

尝尝这个

代码语言:javascript
运行
复制
import React, { useState } from "react";
import { Nav, Form } from "react-bootstrap";
import "./styles.css";

export default function App() {
  const [checkboxes, setCheckboxes] = useState({});

  const hadleClick = (key) => {
    setCheckboxes({
      ...checkboxes,
      [key]: !checkboxes[key]
    });
  };

  return (
    <Nav>
      <Nav.Item onClick={() => hadleClick("one")}>
        <Nav.Link>
          <Form.Check
            onClick={() => hadleClick("one")}
            type="checkbox"
            checked={checkboxes.one}
            id="checkbox1"
            name="checkbox1"
            label="OK 1"
          />
        </Nav.Link>
      </Nav.Item>
      <Nav.Item onClick={() => hadleClick("two")}>
        <Nav.Link>
          <Form.Check
            checked={checkboxes.two}
            type="checkbox"
            id="checkbox2"
            name="checkbox2"
            label="OK 2"
          />
        </Nav.Link>
      </Nav.Item>
      <Nav.Item onClick={() => hadleClick("third")}>
        <Nav.Link>
          <Form.Check
            checked={checkboxes.third}
            type="checkbox"
            id="checkbox3"
            name="checkbox2"
            label="OK 3"
          />
        </Nav.Link>
      </Nav.Item>
    </Nav>
  );
}

以下是codesandbox链接https://codesandbox.io/s/festive-blackwell-vh3dt?file=/src/App.js

票数 2
EN

Stack Overflow用户

发布于 2021-01-06 13:29:00

我找到了解决方案。如果您想在react bootstrap中将复选框添加到导航链接,则需要将method设置为"as“parametr

代码语言:javascript
运行
复制
<Nav>
  <Nav.Item>
    <Nav.Link
      eventKey={"checkbox1"}
      as={(props) => (
        <a {...props} href={"#"}>
          <Form.Check type="checkbox" id="checkbox1" /> {"nav link1"}
        </a>
      )}
    />
  </Nav.Item>
  <Nav.Item>
    <Nav.Link
      eventKey={"checkbox2"}
      as={(props) => (
        <a {...props} href={"#"}>
          <Form.Check type="checkbox" id="checkbox2" /> {"nav link1"}
        </a>
      )}
    />
  </Nav.Item>
  <Nav.Item>
    <Nav.Link
      eventKey={"checkbox3"}
      as={(props) => (
        <a {...props} href={"#"}>
          <Form.Check type="checkbox" id="checkbox3" /> {"nav link1"}
        </a>
      )}
    />
  </Nav.Item>
</Nav>

https://codesandbox.io/s/cocky-field-8jns1?file=/src/App.js:143-957

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65578299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档