用javascript在击键时更新单选按钮
每次在键盘上按下用javascript在击键时更新单选按钮,javascript,r,radio-button,shiny,Javascript,R,Radio Button,Shiny,每次在键盘上按下q时,以下代码应将按钮更新为opt2: library(shiny) fun <- "$(function(){ $(document).keyup(function(e) { if (e.which == 81) { $('#button_2').prop('checked',true) } }); })" runApp(shinyApp( ui = fluidPage( tag
q
时,以下代码应将按钮更新为opt2
:
library(shiny)
fun <- "$(function(){
$(document).keyup(function(e) {
if (e.which == 81) {
$('#button_2').prop('checked',true)
}
});
})"
runApp(shinyApp(
ui = fluidPage(
tags$script(HTML(fun)),
radioButtons("button", "A radio button", choices = list("opt1" = 1, "opt2" = 2)),
textOutput("text")),
server=function(input, output, session) {
output$text <- renderText({input$button})
}
))
库(闪亮)
有趣我附上了你单选按钮的HTML布局截图。链接的解决方案的问题在于它通过ID引用按钮,但您尚未为单选按钮设置ID。下面是一个可能的解决方案。
然后更新服务器功能,以创建单选按钮更改的观察者:
server=function(input, output, session) {
output$text <- renderText({input$button})
observe({
output$text <- renderText({input$button})
})
}
server=功能(输入、输出、会话){
输出$text
fun <- "$(function() {
$(document).keyup(function(e) {
if (e.which == 81) {
var $radioButtons = $('input:radio[name=button]');
$radioButtons.filter('[value=2]').prop('checked', true);
Shiny.onInputChange('button', 2);
}
})
});"
server=function(input, output, session) {
output$text <- renderText({input$button})
observe({
output$text <- renderText({input$button})
})
}