2011-08-29 76 views
0

我有通过调用我的控制器像这样的动作包含图像我想设置一个按钮来重新加载此图像的观点:呼叫MVC行动

<a href="javascript://" class="Button ButtonLarge" id="Reload"><span><span class="ButtonIcon NewTopic">Refresh</span></span></a> 

和行动像这样:

public ActionResult Image() 
     { 
      var builder = new XCaptcha.ImageBuilder(); 
      var result = builder.Create(); 

      Session.Add("SecurityNumber", result.Solution); 

      return new FileContentResult(result.Image, result.ContentType); 
     } 

我需要使用javascript调用这个动作并设置新的图像源的任何帮助,将是很好的

+0

您可以使用jquery $ .get。 http://api.jquery.com/jQuery.get/而不是使用JavaScript –

+0

我需要它使用JavaScript –

+0

是,或者如果你能给我为例我怎么能做到这一点的jquerey –

回答

3

要更新的图像,只需更新src属性。使用jQuery:

$("#Reload").click(function(e) { 
    $("#Captcha").attr("src", "/path/to/your/action"); 

    e.preventDefault(); 
}); 

这样做是什么,当你点击ID为“刷新”的元素,设置“SRC” ID为“验证码”,以“/路径/您/动作/”图像的属性。 e.preventDefault()在那里,所以我们不会按照链接。

+0

shold我把这个在document.ready我做到了这一点: –

+0

'' –

+0

@Eslam是的,这应该工作。你确定你想要那里的控制器后缀?我想它应该是“/帐户/图像”。 – alexn