下面是我的代码片段,ajax
是一个服务器端脚本,用于上传提交的文件。触发input[type=file]
的change
$('#magLogo').on('change', function(e) {
var $input = $(this);
var file = e.currentTarget.files[0];
var data = new FormData();
data.append('file', file);
$.ajax({
type: "POST",
data: data,
cache: false,
contentType: false,
processData: false,
url: 'my/path/to/upload/script.php'
})
.done(function(fullPath) {
$input
.parents('#magLogoCont')
.css('background-image', "url('"+fullPath+"')");
});
});
另一方面,PHP脚本返回一个JSON字符串,其中包含上传文件的临时目录(我在Windows上运行时看起来像file:///C:/wamp/tmp/filename.jpg
)。
问题是,当我想把这个图像作为一个div的背景显示给用户,它已经上传,我在控制台中得到的错误说Not allowed to load local resource
)。我不能直接将其上传到最终目录,因为当用户选择要上传的图像时,所有信息都不可用。
有办法做我想做的事吗?
多谢!
不能,你不能通过这样的"url"/路径将文件集成到浏览器。
将图像移动到网页的httpfiles根目录下的文件夹,并以相对方式直接到该路径