我希望在上传后立即显示图像。为此,我在ajax的$('#imageInput').on('change', function())
函数中添加了函数.success()
,但它不起作用。 alert("good")
弹出"好"但是alert("better")
不会弹出更好的"。
任何想法如何实现这一目标?
JS:
function afterSuccess(data)
{
if(data.indexOf('error')<0)
{ alert ("good");
$('#imageInput').on('change', function() {
alert ("better");
readPath(this);
});
}
}
答案 0 :(得分:2)
$('#imageInput').on('change', function() {...});
事件未触发,因为选择文件时(上传前)上传字段会更改。上传文件时,该字段不会更改。
更新:关于你的后续问题(见下面的评论),请考虑这样的事情,其中data
数组可能会因php脚本返回的内容而异,插入方法可能会有所不同,具体取决于在您的HTML布局上(在这种情况下,我假设您将插入一个元素:
function afterSuccess(data)
{
if(data.indexOf('error')<0)
{
var filepath = data['filepath'];
$("#imageContainer").html("<img src="+filepath+"/>");
} else {
alert('Sorry, but an error occurred while uploading the image. Please try again');
}
}
答案 1 :(得分:0)
如果正确返回文件名和路径,可能会显示它吗?:
function afterSuccess(data)
{
if(data.indexOf('error')<0)
{
$("#desiredDiv").html("<img src="+path+"/>");
}
}