我如何通过jquery和ajax替换图像(在div内)

我试图点击图像并通过jquery将其更改为另一个图像。

当我逐步执行以下代码时,在服务器端,控制器操作触发,在客户端,我可以在firebug观察窗口中看到正确的html返回,但图像根本没有变化。 知道为什么这个div没有更新?

原来的div:

jquery代码:

  $(document).ready(function() { $('div.inlineDiv').live('click', function() { var id = $(this).attr("id"); var toggle = $(this).attr("toggle"); var url = '/Tracker/Update?id=' + id + '&toggle=' + toggle; $.get(url, function(data) { $(this).html(data); }); }); }); 

控制器动作:

  public ActionResult Update(int id, string toggle) { if (toggle == "off") { return Content(""); } return Content(""); } 

我相信get中的this是指get的function。

更轻松:

 $(this).load(URL); 

$(this)并未指向正确的对象。 首先尝试将对象分配给变量,或者只说$('div.inlineDiv').html(data)

 var objDiv=$(this); $.get(url, function(data) { objDiv.html(data); }); 

另一种方法是$('div.inlineDiv img').attr('src',returnedPath); 但是您必须更新控制器操作以仅返回src路径。

或者如下所述$('div.inlineDiv').load(URL);