php一次上传多个文件

时间:2013-08-28 07:52:05

标签: php jquery html

我有这段代码<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?

现在,如果有人点击我想要的复选框,他可以选择要上传的多个文件。对于多个文件,选择我有这样的代码 <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然后他无法立即选择所有文件。我希望当用户点击复选框时,他会立即选择多个文件。他不必刷新页面。

如果用户未单击复选框,则他无法一次选择多个文件。那么有人可以告诉我如何做到这一点,以便用户可以立即采取行动吗?任何帮助和建议都会非常明显。感谢

2 个答案:

答案 0 :(得分:1)

试试这个

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

答案 1 :(得分: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');
        }
    });
});