【发布时间】:2018-03-27 05:33:11
【问题描述】:
我想在 CodeIgniter 中上传一个文件,这样当我选择文件时,它应该被上传,而不需要明确点击 upload 按钮。我为此编写了以下代码。但是,使用此代码只会弹出文件选择器,但选择后文件不会上传,即form 未提交。那么请告诉我的代码中可能存在什么问题?
代码:
<?php
echo form_open_multipart('transferdata/uploadfile');
?>
<form action = "" method = "" id="uploadForm">
<input type="file" name="userfile" id="userfile" style="display: none;" onchange="document.getElementById('uploadForm').submit(); this.value=null; return false;" />
<a class="toolbar" href="#" onclick="document.getElementById('userfile').click();">
<span title="Upload" class="icon-32-upload"></span>
Upload
</a>
</form>
<?php
echo form_close();
?>
【问题讨论】:
-
onchange事件可能没有被触发? -
既然已经使用
echo form_open_multipart('transferdata/uploadfile');生成了表单,为什么还要使用<form action = "" method = "" id="uploadForm">? -
您当然需要
method="POST" enctype="multipart/form-data"来上传文件... -
是的,很明显表单标签是重复的
标签: javascript php html codeigniter