Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 传单弹出窗口中的提交按钮不';t在有光泽的环境中触发观察事件_R_Shiny_Leaflet - Fatal编程技术网

R 传单弹出窗口中的提交按钮不';t在有光泽的环境中触发观察事件

R 传单弹出窗口中的提交按钮不';t在有光泽的环境中触发观察事件,r,shiny,leaflet,R,Shiny,Leaflet,我需要解决这个问题。 我在弹出窗口中有一个提交按钮。单击标记时,输入的$map\u marker\u click$id现在包含所单击标记的id 弹出窗口中有一个提交按钮。单击提交按钮时,我想将输入$map\u marker\u click$id保存到变量中。使用oberserveEvent或EventResponsive对我都不起作用 这是代码,另存为app.R 库(闪亮) 图书馆(单张) df% 添加标记(layerId=~id,popup=~paste(“,Text,” 选择位置“)) }

我需要解决这个问题。 我在弹出窗口中有一个提交按钮。单击标记时,输入的$map\u marker\u click$id现在包含所单击标记的id

弹出窗口中有一个提交按钮。单击提交按钮时,我想将输入$map\u marker\u click$id保存到变量中。使用oberserveEvent或EventResponsive对我都不起作用

这是代码,另存为app.R

库(闪亮)
图书馆(单张)
df%
添加标记(layerId=~id,popup=~paste(“,Text,”
选择位置“)) })
id1问题可能是Shiny不知道您正在添加按钮,因此没有绑定

一个肮脏的伎俩可能是在按钮上添加一个
onclick
函数,告诉Shiny它已被单击:

例如:

<button onclick='Shiny.onInputChange(\"button_click\",  Math.random())' id='selectlocation' type='button' class='btn btn-default action-button'>Select Location</button>
选择位置
此JS函数将随机数发送到Shiny,您可以在
server.R
中使用
input$button\u单击
访问它

然后,您可以使用
input$按钮,单击
eventReactive


正确的方法可能是在底部使用
shinny.unbindAll()
shinny.bindAll()
,但我不知道如何在这里做到这一点。

作为旁注,您正在创建具有相同id的按钮,id对于HTML元素应该是唯一的,因此您可以将标记号添加到id中。谢谢。这很有效。我相信在使用javascript添加元素时会使用bindAll和unbindAll方法。在这里,我直接添加为字符串
<button onclick='Shiny.onInputChange(\"button_click\",  Math.random())' id='selectlocation' type='button' class='btn btn-default action-button'>Select Location</button>