Javascript 图片上传(非框架)

标签 javascript php

我想通过 JavaScript(非框架)上传图像。有人有一个基本的例子来说明如何做到这一点吗?

我收到此错误消息:

Warning: Missing boundary in multipart/form-data POST data in Unknown on line 0 Array ( )

这是我迄今为止正在处理的内容。

<form action="" method="" enctype="" id="uploadImage">
<input type="file" name="image1" id="image1" value="" >
<input type="button" id="submit_button" data-data_enctype="multipart/form-data"     data-form_name="uploadImage" data-url="/gallery/images/upload/" data-change_div="getForm"  value="Upload" onclick="image(this.id, form.id)"/>
</form>

var xmlhttp;
if (window.XMLHttpRequest)
{
    xmlhttp = new XMLHttpRequest();
}
else
{
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}

var datVar = document.getElementById(id);
var url = datVar.dataset.url;
var change_div = datVar.dataset.change_div;

xmlhttp.onreadystatechange = function()
{
    if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
    {
        document.getElementById(change_div).innerHTML = xmlhttp.responseText;
    }
}

xmlhttp.open("POST", url, true);
xmlhttp.setRequestHeader("Content-type", "multipart/form-data");
xmlhttp.send('NULL');

最佳答案

您需要将要发送的数据传递给 xmlhttp.send() 方法。目前您正在向它传递“NULL”,因此它会提示数据丢失。

类似的东西 var data = document.getElementById('#uploadImage'); 得到表格。 创建一个 FormData 对象(FormData 仅在现代浏览器中受支持) var formData = new FormData(data); 然后将 formData 传递给 send 方法就可以了。

关于Javascript 图片上传(非框架),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23051745/

相关文章:

php - 根据一组关键字的出现对sql结果进行排序

php - laravel 5.2 中的输入文件?

Javascript - 如果下拉控件为空,如何隐藏它

javascript - JQuery Animate 背景位置跨浏览器

javascript - 运行 mutool run script.js 时未定义“argv”

javascript - 通过 Kinetic.js 文本元素中的字符串索引获取单词/字符屏幕位置

php MySQL在嵌套div中循环

javascript - 让这个计时器从一个按钮开始

php - Regex量化捕获

javascript - Dojo.request for iteminfo - 在 Fiddler 中返回代码 200,但在浏览器中返回代码 0