2009-03-31 12 views
2

私はasp.net mvcを使用しているのでjqueryを使用して自動ポストバックを偽っています。それは、このような選択リスト(ドロップダウンリスト)で実行されています:jqueryリダイレクトの後にasp.net mvcの参照ページを見つける

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

今、私はこれを使用して参照するURLにアクセスしようとしています/キャラクター/は、SetDefault/[charID](コントローラ、アクション、ID)で:

Request.UrlReferrer 

しかし、それはnullになる予定です。それが何であるかについてのアイデアは何ですか?

答えて

1

window.locationを直接設定することは、ユーザーがロケーションバーに新しいURLを直接入力するのと同じようにブラウザで処理されると思います。これは、参照元が別のページを直接参照しているため、参照元が別のページを直接参照しているためです(例えば、リンク経由で)...

私はあなたの問題を解決するために見ることができる最も簡単な方法はリストダウンあなたの低下が続い/キャラクター/は、SetDefault &への投稿(または取得)があなたのjavascriptは、このようにフォームを送信させることを形であることを確認してください。

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

あなたはその後、ちょうどあなたは、SetDefaultアクションを変更する必要がありますMVCがフォームの要求値をメソッドに正しくバインドするように、コントローラ内でplayerCharactersパラメータを持つようにします。

関連する問題