2016-05-20 111 views
1

我的目標是在選擇文件時自動將圖片上傳到文件夾。繼how do I auto-submit an upload form when a file is selected答案,我試圖使用JavaScript的onchange事件自動提交形式:選擇後立即上傳圖片

<?php 
if(isset($_POST['upload'])) 
{ 
$ImageName = $_FILES['photo']['name']; 
$fileElementName = 'photo'; 
$path = '../images/'; 
$location = $path . $_FILES['photo']['name']; 
move_uploaded_file($_FILES['photo']['tmp_name'], $location); 
} 
?> 

<form method="post" enctype="multipart/form-data"> 
<input type="file" name="photo" onchange="document.getElementById('upload').submit();" id="file" class="inputfile" /> 
<label for="file">Add Image</label> 
<input type="submit" style="display: none;" name="upload" id="upload"> 
<input type="text"> 
<input type="submit"> 
</form> 

當選擇文件時,它不會自動上傳到一個文件夾。

注:我不能使用onchange="form.submit()",因爲我的表單中有多個提交按鈕!

+0

<輸入型 「提交」 風格= 「顯示:無;」 name =「upload」id =「upload」> ?? 爲什麼不 您還需要命名,以便您的輸入,用於PHP看到他們 –

+0

的提交需求'ID =「上傳」'因爲我用'document.getElementById('upload')' –

回答

0

我想你可以簡單地將其更改爲:

document.getElementById('upload').click(); 

或者做這樣的事情:

var button = document.getElementById('upload'); 
button.form.submit(); 
+0

似乎將代碼從'.submit();'更新爲'.click();'解決了這個問題。非常感謝。 –