R 动态查找textinput元素的输入ID
我在R中有一个简单的服务器/ui程序。我用一个lappy创建了10个文本输入 输入的名称为marker1 marker2 marker3等。。具有预定义值(无空值)。我已经创建了一个observeEvent来检查用户何时按下提交按钮(在UI中创建),以便我可以操作新值 当我这样做的时候R 动态查找textinput元素的输入ID,r,shiny,R,Shiny,我在R中有一个简单的服务器/ui程序。我用一个lappy创建了10个文本输入 输入的名称为marker1 marker2 marker3等。。具有预定义值(无空值)。我已经创建了一个observeEvent来检查用户何时按下提交按钮(在UI中创建),以便我可以操作新值 当我这样做的时候 print(input$marker1) 它工作正常,并显示特定标记的值 问题是,我想对所有的标记都这样做,并且它们的数量不是静态的,所以我提出了这个想法,但它不起作用: for(i in
print(input$marker1)
它工作正常,并显示特定标记的值
问题是,我想对所有的标记都这样做,并且它们的数量不是静态的,所以我提出了这个想法,但它不起作用:
for(i in length(markers))
{
markername = paste0("marker",i);
print(input$markername)
}
我理解这背后的逻辑是错误的,因为在输入$之后,您需要输入输入的实际名称,但是当我的标记的数量是动态的时,我该如何做呢
编辑#1并更新:
在查看了输入格式之后,我发现了这个,它实际上可以让您粘贴输入的名称:
input[[paste0("name",i)]]
所以,现在的问题是这样的
for(i in length(markers))
{
global_var[i] <<- input[[paste0("name",i)]]
}
print(global_var)
for(长度为i(标记))
{
global_var[i]我遇到的问题是如何设置要动态显示的输入的名称。如上所述,我尝试了不同的方法,但现在我找到了完整的解决方案,它还可以(如果需要)在列表中提供所述“分组”输入的值
我使用一个名为newNames的全局变量(因为我也想使用其他输出中的值),并在开始时将其初始化为NULL,其余代码如下所示,这是一个简单的lappy:
lapply(1:length(markers), function(i)
{
newNames[i] <<- input[[paste0("marker", i)]]
})
printf(newNames)
lapply(1:长度(标记)、函数(i)
{
新名称[i]