在antd Table中插入可编辑的单元格实例
编程学习 2021-07-04 14:06www.dzhlxh.cn编程入门
这篇文章主要介绍了在antd Table中插入可编辑的单元格实例,具有很好的参考价值,希望对大家有所帮助。一起跟随长沙网络推广过来看看吧
最近遇到一个需求,要求表格中某一属性是可以手动改变的。看了antd Table 的官方组件,发现不太灵活,所以自己动手写了一下。
实现的思路大同小异,在columns中插入Input,很简单的,直接render中返回就好,只是中间遇到小插曲,改变一个input的值所有的都跟着改变,原来是都定义成了同一个变量,后来家里一个动态的后缀。具体代码见贴图
补充知识:React+Ant Design实现可编辑单元格、添加行并利用form获取新增数据
实现如下图所示需求:
实现功能说明:
点击添加按钮,在表格中添加新的空白行(如下图所示),在点击提交的时候获取空白行的数据
在构造函数内定义:
constructor(props) {
super(props)
this.state = {
dataSource:[{
key: 0,
name1: '',
name2: '',
name3: '',
}],//应用信息化查询方法
count:1,//总数
}
}
注:如果dataSource定义为空数组,则页面初始化时表格没有输入框,需要点击添加行,如下图
在render()中定义:
const { form: { getFieldDecorator },dataSource } = this.props
在return中添加如下代码:
<div>
</Form>
<Form.Item>
<Table
columns={[
{ title: '名称1', dataIndex: 'name1',render: (text, record, index) =>
<Form.Item key={index}>
{getFieldDecorator(`tableDt[${index}].name1`)(
<Input placeholder="请输入名称1" />
)}
</Form.Item>
},
{ title: '名称2', dataIndex: 'name2',render: (text, record, index) =>
<Form.Item key={index}>
{getFieldDecorator(`tableDt[${index}].name2`)(
<Input placeholder="请输入名称2" />
)}
</Form.Item>
},
{ title: '名称3', dataIndex: 'name3',render: (text, record, index) =>
<Form.Item key={index}>
{getFieldDecorator(`tableDt[${index}].name3`)(
<Input placeholder="请输入名称3" />
)}
</Form.Item>
},
]}
dataSource={this.state.dataSource}
pagination={false}
/>
</Form.Item>
</Form>
<Row gutter={16}>
<Col span={24}>
<Button onClick={ this.save } type="primary">提交</Button>
<Button onClick={ this.toback }>返回</Button>
<span className="tips">{this.state.saveTipCont}</span>
</Col>
</Row>
</div>
点击添加行按钮的操作方法:
//添加应用信息化查询方法行
handleRowAdd = () => {
const { count, dataSource } = this.state;
const newData = {
key: count,
name1: '',
name2: '',
name3: '',
};
this.setState({
dataSource: [...dataSource, newData],
count: count + 1,
});
}
点击提交操作的方法:
//保存
save = () => {
//处理校验值
this.props.form.validateFields((err, values) => {
// console.log(values)
if(!err){
// values.tableDt就是个表格数据的数组,可对获取的值进行处理校验处理
}
})
}
实现效果如下:
value.tableDt值如下:
以上这篇在antd Table中插入可编辑的单元格实例就是长沙网络推广分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持狼蚁SEO。
编程语言
- ThinkPad 笔记本如何调节LCD屏幕亮度
- Dreamweaver制作网页打开特效教程
- Win10 Mobile 10586升级后无限重启怎么办 硬重启帮您
- Win8系统提示音频设备有问题有一个或多个音频服
- Xbox One版Win10首个预览版9月份发布
- 如何在textarea文本输入区内实现换行
- Win10 Build 9901系统更新 预览版新版本下载
- McAfee Framework存在远程格式串处理漏洞
- Win10家庭版今日(7月30)正式在中国官方商城开卖
- Win10 Mobile预览版更新完10536.1000后才收到10536.100
- Win10 RS2更新了什么-Win10 RS2最终版本号1704首曝
- Windows7如何查看回收站对应的文件夹有哪些方法
- Win10让Charms栏回归桌面的方法教程
- 取消Windows XP系统开机启动画面的小技巧
- win8系统怎么下载安装USB百兆网卡?
- XP系统下磁盘空间变少了怎么办?XP系统磁盘空间