2012-12-02 40 views
0

我是jquery和php的新手,所以如果问题很简单,我很抱歉。 我必须根据列表框中选择的选项更改显示的图像。 到目前为止,我的jquery能够检索并显示所需的img id.I本质上试图将图像id发回到php脚本,然后检索图像,但后来意识到我可以直接操纵img标签(因为我的图像是名字1.jpg,2.jpg)。有人可以帮我吗?谢谢! 下面就相关代码:无法动态更改使用ajax和jquery显示的图像

HTML: 
<img id="design" class ="img-rounded" alt="Ad Picture" width="450p" height="450"/> 
<input type="button" id="GetImage" class="btn" value="Get Image"> 
Jquery: 
$('#GetImage').live("click",function() { 
var imageid= $('#UserIds').val(); 
$.ajax({ 
    type:'POST', 
    url:'ProvidingFeedback.php', 
    data:{id:imageid}, 
    success: function(msg){ 
     if(result=='success') { 
      $('#design').attr('src','/img/2.jpg'); 

     } 
} 
}); 


}); 

+1

ajax post后发生了什么?你有没有尝试在JS控制台或萤火虫中进行调试?你确定阿贾克斯成功吗? –

+0

是的Ajax发布成功。使用警告框来显示成功并在Firebug中检查。 –

+0

你从哪里得到'result',这个名称没有变量,为什么你需要检查ajax调用在'success'回调中是否成功,这个回调只在ajax调用成功时才会被触发。删除if语句。 – adeneo

回答

0

,因为你选择的图像作为ID只尝试IMG或#design

$('#img').attr('src','/img/2.jpg'); 

应该

$('#design').attr('src','/img/2.jpg'); 

if(msg=='success') { 

应该

if(msg=='success') { 
+0

对不起,我只是在玩代码..我改变了id之间的关系。它与#design无效:( –

+0

尝试'Ad Picture'把src放在这里比改变 –

+0

还要确保你是'ProvideFeedback.php'只有'成功'才能成功' –

0

尝试

$.ajax({ 
    type:'POST', 
    url:'ProvidingFeedback.php', 
    data:{id:imageid}, 
    success: function(msg){ 
    //if(result=='success') { // 'result' is not define in you code above should be 'msg' 
     $('#design').attr('src','/img/2.jpg'); 

    //} 
} 

如果你想使用msg

为了更好的帮助到得到结果,你调试你的代码,你可能想看看@Chrome Developer Tools: BreakpointsFirebug Breakpoints