わかりましたので、状況は私が自分のインデックスページにいるということです。次のような jQuery onClick イベントがあります。
$('#example').on('click', 'tr', function (e) {
var aData = oTable.fnGetData(this);
showCampaign(aData);
});
この関数が意図したとおりに機能していることを確認しました。aData には、クリックされたテーブル行の各セルのデータを含む配列が取り込まれます。
私がする必要があるのは、このクリックが発生したときに aData を MVC に送信し、そのデータを入力できる新しいビューをロードすることです。これは私が現在試みていることです....
function showCampaign(aData) {
$.ajax({
type: "POST" ,
url: "Test/Show",
data : aData
}).done(function (response) {
window.location.href = response.Url;
}).error(function (jqxhr, textstatus, errorthrown) {
alert("didn't work");
});
};
この関数はある程度機能します... MVCにリクエストを送信します...しかし、データが通過するのを見ていません(null)。応答文字列を返すと、ページが読み込まれません。
私の Controller クラスのメソッドは次のようになります。
[HttpPost]
public ActionResult ShowCampaign(String[] aData)
{
var redirectUrl = new UrlHelper(Request.RequestContext).Action("TestView","Test");
return Json(new {Url : redirectUrl });
}
上記の目的で、TestView はロードするビューの名前であり、Test はコントローラーです。
ここで何が間違っているのですか..MVCを理解しようとしていますが、まだ理解していません...ライトをクリックしていません。