在jquery重定向之后在asp.net mvc中找到引用页面

时间:2009-03-31 18:37:36

标签: jquery asp.net-mvc redirect referrer

因为我使用的是asp.net mvc,所以我使用jquery伪装了一个autopostback。它正在这样的选择列表(下拉列表)中执行:

$(document).ready(function() {
    // autopostback for character drop down list
    $('#playerCharacters').change(function() {
        var charId = $('#playerCharacters option:selected').val();
        window.location = "/Character/SetDefault/" + charId;
    });
});

现在在/ Character / SetDefault / [charID](控制器,操作,ID)我试图使用以下方法访问引用URL:

Request.UrlReferrer

但它即将出现。关于为什么会这样的想法?

1 个答案:

答案 0 :(得分:1)

我认为浏览器会直接设置window.location,就像处理用户直接在位置栏中输入新URL一样。这意味着没有推荐人,因为推荐人是关于一个页面直接引用另一个页面(例如通过链接)而不是浏览器只是转到另一个页面...

我能看到解决您问题的最简单方法是确保您的下拉列表采用发布(或获取)/ Character / SetDefault&然后让你的javascript提交这样的表格:

$('#playerCharacters').change(function() {
    this.form.submit();
});

然后,您只需要在控制器中更改SetDefault操作以获得playerCharacters参数,以便MVC将表单的请求值正确绑定到您的方法。