修改后的输入类型=“文件”的奇怪行为

时间:2012-03-23 08:46:24

标签: forms jsp file-upload

this个帖子之后,我尝试在服务器上上传文件。如果我使用这样的简单形式:



<form action="/site/subscribers_import" method="post" enctype="multipart/form-data">
    <input type="file" name="file" />
    <input type="submit" />
</form>

一切顺利,但如果我尝试修改表单,请执行以下操作:



<form action="/site/subscribers_import" method="post" enctype="multipart/form-data" >

    <input type="submit" value='${importLabel}' style="float: right;" />

    <div id="chooseFileBttn" style="width:3em; height: 2em; cursor:pointer; float: right;" onclick="getFile()">

    <img src="/site/images/import.png" title="${importUsers}" height="20" width="30" style="padding-right: 10px; float: right;"/>

    </div>

    <div style='height: 0px;width:0px; overflow:hidden;'>
        <input id="upfile" type="file"/>
    </div>

</form>

<script>
        function getFile(){
            document.getElementById("upfile").click();
        }
</script> 

我在servlet中没有得到任何东西。 有谁有任何想法为什么?谢谢!

1 个答案:

答案 0 :(得分:1)

您的工作投入:

<!-- presents a name attribute -->
<input type="file" name="file" />

你没有工作的意见:

<!-- does not present a name attribute, but an id instead -->
<input id="upfile" type="file"/>

您的输入需要一个名称,该名称将用作参数键,从而在servlet中恢复。