2015-10-15 77 views
0

我正在嘗試更改server.R上的updateSelectizeInput選項,具體取決於用戶在ui.R上的textInput中輸入的值。從server.R反應式內容

提取物:

更新郵編與NewZIP用戶

isolate({if (input$NewZIP != "") {ZIPCode<-reactive(input$NewZIP)}})

獲取與郵政編碼相關文件,並更新相關的下拉列表中的選擇進入

ZIPFile<-read.csv(paste0("./data/",ZIPCode), sep="") updateSelectizeInput(session, 'MedicalProcedure', server = T, choices=as.character(ZIPFile$a_description))

這不起作用,我不知道我在哪裏做錯了什麼。

有人可以幫忙嗎?

謝謝,

小號

回答

0

isolate應該使用內部一個reactive:它使reactive '不敏感' 到內部input變化。所以你應該嘗試這樣的事情:

ZIPCode <- reactive({ 
    if(input$NewZip == "") return(NULL) 
    input$NewZip 
}) 

ZIPFile <- reactive({ 
    if(is.null(ZIPCode())) return(NULL) 
    read.csv(paste0("./data/", ZIPCode()), sep="") 
)} 

observeEvent(ZIPFile(), { 
    updateSelectizeInput(session, 'MedicalProcedure', server = T, 
         choices = as.character(ZIPFile()$a_description)) 
}, ignoreNULL = TRUE)