当前位置:首页 > React

react表格两排复选框如何设定

2026-01-26 09:42:59React

实现双排复选框的表格设计

在React中实现两排复选框的表格,可以通过以下方式完成。假设使用antd库的Table组件,结合自定义渲染实现双排布局。

核心代码示例:

import { Table, Checkbox } from 'antd';

const dataSource = [
  { key: '1', name: '选项组A' },
  { key: '2', name: '选项组B' }
];

const columns = [
  {
    title: '名称',
    dataIndex: 'name',
    key: 'name',
  },
  {
    title: '复选框组',
    dataIndex: 'checks',
    key: 'checks',
    render: () => (
      <div style={{ display: 'grid', gridTemplateColumns: 'repeat(2, 1fr)', gap: 8 }}>
        {[1, 2, 3, 4].map(item => (
          <Checkbox key={item}>选项{item}</Checkbox>
        ))}
      </div>
    )
  }
];

function DoubleRowCheckboxTable() {
  return <Table dataSource={dataSource} columns={columns} />;
}

自定义样式布局方案

若需要更灵活的布局控制,可采用CSS Grid或Flexbox实现双排列:

const checkboxStyle = {
  display: 'grid',
  gridTemplateColumns: 'repeat(2, 150px)',
  gridAutoRows: '30px',
  alignItems: 'center'
};

const renderChecks = () => (
  <div style={checkboxStyle}>
    {['周一', '周二', '周三', '周四', '周五', '周六', '周日'].map(day => (
      <Checkbox key={day}>{day}</Checkbox>
    ))}
  </div>
);

状态管理方案

需要管理复选框状态时,建议使用React的useState配合行数据唯一标识:

const [checkedState, setCheckedState] = useState({});

const handleCheck = (rowKey, checkKey) => {
  setCheckedState(prev => ({
    ...prev,
    [`${rowKey}-${checkKey}`]: !prev[`${rowKey}-${checkKey}`]
  }));
};

// 在render函数中:
<Checkbox 
  checked={checkedState[`${record.key}-${item}`]} 
  onChange={() => handleCheck(record.key, item)}
/>

响应式布局处理

针对移动端适配,可通过媒体查询调整列数:

.checkbox-container {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 768px) {
  .checkbox-container {
    grid-template-columns: 1fr;
  }
}

以上方案可根据实际需求组合使用,关键点在于:

  • 使用CSS Grid/Flexbox控制双排布局
  • 通过Table的render属性自定义单元格内容
  • 建立合适的状态管理结构跟踪选中状态

react表格两排复选框如何设定

标签: 复选框两排
分享给朋友:

相关文章

jquery复选框

jquery复选框

jQuery 复选框操作 使用 jQuery 操作复选框(checkbox)可以实现选中、取消选中、获取状态等功能。以下是常见的操作方法: 选中复选框 通过设置 checked 属性为 true 可…

jquery 复选框

jquery 复选框

jQuery 复选框操作 使用 jQuery 操作复选框(checkbox)可以通过多种方式实现,包括选中、取消选中、获取状态以及事件监听。以下是常见的操作方法和示例。 选中或取消选中复选框 通过…

vue复选框实现

vue复选框实现

基础实现 在 Vue 中使用 v-model 绑定复选框的状态。通过 v-model 可以直接获取复选框的选中状态(布尔值)。 <template> <div>…

vue 实现复选框

vue 实现复选框

Vue 实现复选框的方法 在 Vue 中实现复选框可以通过 v-model 指令绑定数据,结合 input 元素的 type="checkbox" 属性来实现。以下是几种常见场景的实现方式。 单个…

vue 复选框实现

vue 复选框实现

实现基础复选框 在 Vue 中实现复选框可以通过 v-model 绑定到数据属性。创建一个布尔值数据属性用于存储复选框的状态: <template> <div>…

react 如何制作复选框

react 如何制作复选框

使用原生 HTML 复选框 在 React 中可以直接使用 HTML 的 <input type="checkbox"> 元素来创建复选框。通过 checked 和 onChange 属性…