在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中没有得到任何东西。 有谁有任何想法为什么?谢谢!
答案 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中恢复。