jQuery Call Controller的动作

时间:2016-06-08 14:32:19

标签: javascript jquery asp.net-mvc

嗨我有一个函数,一旦调用它就应该调用Controller Action。但它没有调用Action Method;你能不能请一点建议

@Path("/customers")
public class CustomerResource {

    @GET
    @Path("")
    @Produces("application/xml")
    public StreamingOutput getCustomer(){
        ... some code ...
    }

}

我正在努力实现类似Logout Modal

的目标

1 个答案:

答案 0 :(得分:1)

 location.href="Home/Logout";

为安全起见,如果您的代码位于剃刀视图中,则应使用Url.Action Html帮助程序生成操作方法的正确相对路径。

假设您的代码位于剃刀视图中,

location.href="@Url.Action("Logout","Home")";

如果您的代码位于外部js文件内(不在剃刀视图内),您仍然可以使用帮助程序方法生成URL并将其传递给javascript。

一种方法是在你的剃刀视图中保留一个html元素,并在你的javascript代码中使用jQuery读取它。

<input type="hidden" value="@Url.Action("Logout","Home")" id="logoutUrl" />

在你的javascript中,

location.href=$("#logoutUrl").val();

另一个(更好的)解决方案是将带有所需网址的javascript设置对象传递给javascript,如本文How do I make JS know about the application root?中所述。