我想显示来自JSON对象的图像和存储在MySQL数据库中的图像路径。
我有用户表,其中包含:
- userid
- 用户名
- user_img_path
- user_address
现在,我将使用PHP触发一个查询,如:
SELECT `user_id`, `username`,`user_img_path` FROM `users`
我将输出存储在数组$rows
中并将该数组编码为JSON
json_encode($rows);
和我调用这个PHP文件在我的jQuery的ajax
调用和JSON输出。我可以正确显示其他信息,但问题是我无法使用jQuery ajax
在HTML中显示图像。
function callAjax1()
{
$.ajax({
url: 'userApi.php',
data: "",
dataType: 'json',
success:function(rows)
{
$.each(rows,function(i,item)
{
var user_id=rows[i].user_id;
var user_name=rows[i].user_name;
var user_img_path=rows[i].user_img_path;
console.log(user_id,user_name,user_img_path);
$("#poll_left_body").append('<a href="#"> <img src='https://url/"'+user_img_path+'<label id="user_name" rel="tooltip" title=" Edward 11,356" style="color:black;">'+user_name+'</label></a><a href="/twitter/bootstrap/network" class="social-count">11,356</a>');
});
}
});
}
尝试将user_img_path放入变量并使用javascript
var img = document.createElement("img");
img.src = user_img_path;
var body = document.body; // use element where you want to display image
body.appendChild(img);
似乎您无法设置图像的路径。你可以这样做:
1)确保你从数据库中获得的路径是正确的,并尝试硬编码它并检查图像显示与否。
2)如果你的路径是正确的,你需要检查你得到的json输出是什么?它是否与存储在数据库中的相同?要检查,可以使用firebug(控制台选项卡)
3)如果以上步骤是正确的,最后和重要的是检查HTML呈现你的代码。如果代码也是正确的。然后你必须能够看到图像(如果没有其他问题)
希望能有所帮助。