CI 如何ajax方式上传图片?
好像只能通过表单的形式上传。
请问怎么通过ajax方式上传图片?
回复内容:
看了CI框架里的文件上传类 http://codeigniter.org.cn/user_guide/libraries/file_uploading.html
好像只能通过表单的形式上传。
请问怎么通过ajax方式上传图片?
有很多这种第三方库,不如说这个https://code.google.com/p/ajax-upload/
依赖:http://malsup.com/jquery/form/
效果:
服务器端实现的比如Ajax.php
,你只要保证返回imageUrl这个json字段就可以了
你应该是想实现无刷新上传。
无刷新上传方式有 2 种:
1.iFrame 无刷新上传文件
2.使用 Flash 上传 (一个好用的 Flash 上传插件 uploadify)
说一句:Ajax 是传递字符串,而不是二进制文件。所以,不存在 Ajax 上传文件这种说法。
是可以通过AJAX上传文件的,但是需要浏览器支持HTML5(用到FormData对象),所以最好使用IFRAME和FLASH上传。
[使用AJAX上传文件]http://jsfiddle.net/gh/get/extjs/4.2/icattlecoder/jsfiddle/tree/master...
前几天刚做完一个CI + AJAX 上传的项目,大概是用到Formdata的方法上传了
下面是代码var fd = new FormData();
fd.append("userfile", 1);
fd.append("userfile", $("#imgfile").get(0).files[0]);
fd.append("uid",$('#class-author').val());
$.ajax({
url: "clazz/upload",
type: "POST",
processData: false,
contentType: false,
data:fd,
success: function(d) {
alert(d);
window.photo_url = d;
alert("上传成功");
}
亲测可用=。=希望可以帮助你~