首页 > 解决方案 > R DT 按类型限制可编辑内容

问题描述

我有一个闪亮的应用程序,它使用DT和它的可编辑功能。该应用程序运行良好,但我想限制/验证用户只输入数值,这可能吗还是我必须手动检查这些值?

MWE

目标:将 1:2 列限制为数字。

DT::datatable(iris, 
              editable = list(target = "column", 
                              disable = list(columns = 3:ncol(iris))))

标签: rdt

解决方案


我在实现此功能的 Github 存储库上做了一个拉取请求。DT还没有被接受,希望能接受。同时,如果您使用我的 DT 分支,您可以将编辑限制为仅接受数字。要安装它:remotes::install_github("stla/DT", ref = "numericedit"). 要请求对某些列进行数字编辑,请设置选项editable = list(target = "cell", numeric = INDICES),其中INDICES是要进行数字编辑的列的索引向量。默认情况下(如果您未设置该numeric选项),所有数字列都仅限于数字编辑。要禁用此行为,请设置numeric = "none".


推荐阅读