Yeni bir resim yüklediğimde, profil resminin sayfayı yeniden yüklemeden veya sayfalar arasında geçiş yapmadan bu yeni resme dönüşmesini istiyorum. Ben görüntü kaynağını base64 kodlanmış dizeye değiştirmek için AJAX get
yöntemi ile jQuery kullanıyorum.JQuery'de temel64 görüntü dizesi güncellendiğinde görüntü yenileme gerçekleşmiyor
ekran profil resmi jQuery fonksiyonu -
$("img.profilepicture").each(function() {
var profileid = $("#profileid").val();
var action = "image";
var self = $(this);
getprofileimage(profileid, action,self);
});
function getprofileimage(profileid, action, self) {
$.ajax({
type: "GET",
url: "StoryServlet",
data: {
'action': action,
'for': profileid,
'timestamp': new Date().getTime()
},
processData: false,
contentType: false,
success: function (data) {
self.attr('src',data.base64String);
self.attr('title','profilepic');
}
});
}
yükle görüntü jQuery fonksiyonu -
$("#uploadpic").click(function (e) {
e.preventDefault();
var fd = new FormData(document.querySelector("form"));
$.ajax({
type: "POST",
url: "StoryServlet",
data: fd,
processData: false,
contentType: false,
success: function (data) {
$("#picsucess").text(data.filename + " " + "uploaded sucessfully!");
$("#picsucess").fadeIn();
$("#picsucess").fadeOut(10000);
}
}).done(function (data) {
//done block
}).fail(function (jqXHR, textStatus) {
$("#fadein").text('File upload failed ...');
$("#fadein").fadeIn();
$("#fadein").fadeOut(10000);
}).complete(function (jqXHR, textStatus) {
location.reload();
});
});
Işlemin kaldırılmasıData: false, contentType: false, işini yaptı. Teşekkürler! – bodhi