5

我正在尝试实现一个表单来上传文件,但是当我单击提交按钮时开始执行操作,问题是一个奇怪的错误,我不知道它是什么,我做了一个例子教程,它没有问题,现在我正在实现相同但使用 index.html 并且它不起作用。

错误是:“if (input$uploadFasta == 0) return(NULL) 中的错误:参数长度为零”

我的 index.html 就像:

<form class="span12 menu-med-upload">
    <div class="row-fluid">
        <center>
          <div class="custom-input-file btn btn-inverse">
            <input type="file" size="1" id="fileFasta" class="input-file" />
          </div>
        </center>
        <button id="uploadFasta" type="button" class="btn action-button shiny-bound-input" >go!</button>
    </div>
</form>

我的 server.R 就像:

output$table <- renderText({
    if(input$uploadFasta == 0)
        return(NULL)
    myRenderTable()
})

有人知道问题出在哪里,谢谢大家,如果这个话题以前是开放的,但我找不到,我很抱歉。

4

1 回答 1

2

操作按钮是一个自定义输入绑定,我敢打赌它没有被加载。

在与 server.R 相同的目录中添加一个 global.R 文件,并让它包含以下内容:

addResourcePath(
    prefix='actionbutton', 
    directoryPath=system.file('actionbutton', 
                          package='shinyIncubator'))

然后在您的 index.html 中,将以下内容添加到<head>

<script src="actionbutton/actionbutton.js"></script>

(与往常一样,请确保有一个明确的结束</script>标记——不要使用<script />。)

于 2013-04-01T17:34:29.027 回答