javascript를 사용하여 작업을로드하고 작업 메서드가 "returnUrl"매개 변수 중 하나를 호출 할 때 항상 null 인 것을 확인합니다. 나는 returnUrl이 자바 스크립트에서 firebug를 사용하여 올바르게 채워졌지만, .load 함수와 action 메소드를 실행하는 중간에 returnUrl의 값이 손실되고 null로 설정되었다는 것을 확인했다. 나는 "id"매개 변수를 제거하고 returnUrl이 올바른 값을 갖는 "returnUrl"매개 변수를 가지고있는 것으로 나타났습니다. 나는 여기에서 무슨 일이 일어나고 있는지 완전히 알아 내기 위해 많은 시간을 보냈다. 나는 약간의 도움을 줄 것이다.MVC3 Action Javascript에서 호출 ReturnUrl 매개 변수는 항상 null
내 자바 스크립트 :
<!-- Review Dialog Popup -->
<script type="text/javascript">
function showWriteReviewDialog(gameId, returnUrl) {
if($("#Review").length == 0)
{
var url = "@Url.Action("WriteUserReview", "UGDBUser", new { id = "PLACEHOLDER", returnUrl = Request.Url.ToString() })";
// ajax load
$('#writereview').load(url.replace('PLACEHOLDER', gameId));
} else {
// clear summary & reviewtext fields
$('#summary,#reviewtext').val('');
//reopen the write review dialog which was previously rendered
$("#Review").dialog({
modal: true,
autoOpen: true,
resizeable: false
});
}
};
</script>
내 무식하게 아래 작업 방법 :
이 [Authorize]
public ActionResult WriteUserReview(Guid id, string returnUrl)
{
return Redirect(returnUrl);
}
그래서 당신이 실제로 서버에 GET이 returnUrl 매개 변수를 포함하고 있음을 확인했다 모두 반환? 그것을 위해 루트가 어떻게 설정되어 있습니까? –