//不用Form
//可用jQuery
用户已经**选择好了**图片文件,如图所示
input type="file" id="myPic"
如何将这个图片异步上传?
//test
function doUpLoad(){
var pp = $("#myPic").val();//1347092855_407.jpg
//???
}
http://bbs.csdn.net/topics/390192588
这样的代码有很多
http://blog.csdn.net/highplayer/article/details/7392337
http://blog.163.com/zhou_shj/blog/static/6555644420104503138229/
http://www.cnblogs.com/qiantuwuliang/archive/2009/09/01/1558347.html
ajaxfileupload,jquery.form,都满足你的要求,不过也是居于表单对象的多。一定不用表单你只能用flash了,或者不用ie9-浏览器,标准浏览器支持formdata对象,用这个加ajax可以直接上传
html5 ajax上传文件
必须用户点击浏览按钮选择了文件,JS才能自动提交;
没有用户参考JS是没有权限访问用户本地文件的。
我使用的是ajaxFileUpload进行图片上传的,在input上注册一个onchange事件,当选择完图片后调用上传操作,如下:
$("#uploadFile").on("change", function () {
ajaxFileUpload();
});
需要注意的点是当上传成功之后,需要先清除这个change事件,重新注册一下,如果不这么做,当点击上传一次之后,再选择图片就不会触发change事件了。
$("#uploadFile").off("change");
$("#uploadFile").on("change", function () {
ajaxFileUpload();
});