0

我想将文件数组的值发送到我的 PHP 服务器,我尝试这样做,但 jquery 返回未定义,当然我对 jquery 还是新手,这里是代码:

for ($i=1;$i<=$stars_settings['attachments']['max_number'];$i++)
{
    $cls = ($i == 1 && in_array('attachments',$_SESSION['iserror'])) ? ' class="isError" ' : '';
    echo '<input id="attachment['.$i.']" type="file" name="attachment['.$i.']" size="50" '.$cls.' /><br />';
}

我怎样才能提交这个id="attachment['.$i.']"

4

1 回答 1

-1

不能仅使用普通的 jQuery 上传文件。

您需要对此保持聪明,要么创建自己的方法来处理上传,要么使用其他人创建的库/插件。


例如,您可以这样做:

// Originally solved by Tim Branyen in his drop file plugin
// http://dev.aboutnerd.com/jQuery.dropFile/jquery.dropFile.js
// Allows for datatransfer and file uploads
jQuery.event.props.push('dataTransfer');

然后,当有人从他们的桌面将文件放入潜水中时,您可以执行以下操作:

$(document).on('drop', '.attachments', function(event) {
    var dt, files;
    event.preventDefault();
    event.stopPropagation();
    attachments.removeClass('hover');
    dt = event.dataTransfer;
    files = dt.files;
    // Do something with the raw files
});

以下是可用于处理原始文件的函数示例:

function handleFile(file) {
    var reader = new FileReader();
    reader.onload = function(event) {
       var dataURL = event.target.result;
       //upload the file via ajax
    };
    reader.readAsDataURL(file);
}
于 2013-11-05T19:27:09.867 回答