2013-08-28 131 views
0

我有這段代碼<input type="file" name="image_logo" id="image_logo" /> 這個人在瀏覽時只會選擇一個文件。 現在我已經做了這樣的複選框 <input type="checkbox" name="multiple_upload" value="yes" > &nbsp; Do You want to upload multiple files at a time?php一次上傳多個文件

現在,如果有人點擊複選框,我希望他可以選擇多個文件上傳。對於多個文件選擇我有這樣的代碼 <input type="file" name="image_logo" id="image_logo" multiple />

但在這裏我想,如果用戶點擊複選框,然後他將選擇一次多個文件,否則他將只選擇一個文件。因此,對於我的代碼是這樣

<input type="checkbox" name="multiple_upload" value="yes" > 
<?php if(isset($_POST['multiple_upload'])) { 
    <input type="file" name="image_logo" id="image_logo" multiple /> 
} 
else { 
<input type="file" name="image_logo" id="image_logo" /> 
} 

但這裏的問題是,因爲我已經使用$_POST那麼他不能選擇點擊的所有文件瞬間。我希望當用戶點擊複選框時,他會一次選擇多個文件。他不必刷新頁面。

如果用戶沒有點擊複選框,那麼他不能一次選擇多個文件。那麼有人可以告訴我如何做到這一點,以便用戶可以立即做出行動?任何幫助和建議都將非常可觀。由於

+0

'multiple'並不意味着用戶_has to_上傳多個文件,那麼你爲什麼不設置該屬性第一個地方,讓他們只選擇一個或多個文件,因爲他們希望......? – CBroe

回答

1

試試這個

$('input[name="multiple_upload"]').change(function(){ 
    if($(this).val() == 'yes'){ 
     $('input[type="file"]').prop('multiple', true); 
    }else{ 
     $('input[type="file"]').prop('multiple', false); 
    } 
}); 
0

試試這個Example

$(document).ready(function() { 
    $('input[name="multiple_upload"]').click(function() { 
     if ($(this).is(":checked")) { 
      $('#image_logo').attr('multiple', true); 
     } else { 
      $('#image_logo').removeAttr('multiple'); 
     } 
    }); 
});