繁体   English   中英

使用ajax上传文件

[英]upload file using ajax

在这方面遇到障碍。

我到目前为止所拥有的:

  <input id="newFile" type="file"/>
  <span style="background-color:orange;" onClick="newImage()">HEYTRY</span>

这显然不是很远。

我正在寻找一种基本方法来将此图像加载到变量中,将变量转换为可通过URL(ajax)传递的内容,然后一旦可以从URL中提取位,就可以通过php实现我的目标。

不像我预期的那么容易。

任何帮助都会很棒。

谢谢

我使用此插件上传文件。 http://www.uploadify.com/

这些帮助有用?

并非对所有浏览器都适用,但这是通过AJAX进行多个文件上传的一种好方法:

function upload_files(entityKey, files, url, progress_callback) {
  var xhr = new XMLHttpRequest(), formData = new FormData();
  xhr.upload['onprogress'] = progress_callback;

  formData.append('entityKey', entityKey);
  $.each(files, function(i, file) { formData.append('file[]', file);});

  xhr.open("post", url, true);
  xhr.setRequestHeader("Cache-Control", "no-cache");
  xhr.send(formData);
}

entityKey是服务器上参数的示例。 “文件”参数来自文件类型输入表单元素(作为支持多个数组的数组)的“文件”属性。 “ progress_callback”参数是一个函数,该函数接受具有(至少)“ loaded”和“ total”字段(单位为字节)的对象。 它不在乎服务器响应。

我使用此插件上传文件。

表格插件

您可以使用此插件方法传递$ _FILES数据,并在以后使用PHP代码:

$('.yourFormUpload').ajaxSubmit(options);

对于选项变量,您可以阅读它的文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM