0

この投稿をフォローしましたが、私のソリューションで機能するのはエラー メッセージ アラートだけです。:D

私のjs-ajaxコード:

$(document).ready(function () {
    $('a').click(function (e) {
        var data = { 'id': $(this).attr("id") };
        var dataVal = JSON.stringify(data);

        $.ajax({
            type: "POST",
            url: "@Url.Action("ActionName", "ControllerName")", 
            contentType: "application/json; charset=utf-8",
            data: dataVal,
            dataType: "json",
            success: function (id) {
                alert(data.d);
                alert("yay! it works!");
            },
            error: function(id){
                alert("haha, it doesn't work! Noob!");
            }
        });
        return false;
    });
});

これはボディの最後にあるため、他のすべての html コンテンツがレンダリングされた後にロードされます。

これは、コントローラーのコールバック関数です。

[HttpPost]
public ActionResult Hello(string id)
{
    return RedirectToAction(id);
}

および HTML アンカー タグ:

<a href="#" style="float:left; font-size:13px;" id="pageName">Read more</a>

したがって、私が望むのは、アンカータグリンクをクリックすると、このJSが起動され、サーバー側から関数が呼び出され、 idパラメーターの値が渡され、コールバック関数が実行される場所です。ジョブ (指定された ID に従ってビューを呼び出す)。

ぶぅー、「ハハハ、ダメだ!ノーブ!」しか出てこない。警告メッセージ。:D 何か提案はありますか?

いくつかのコードによる更新 RedirectToActionは、別のアクションにリダイレクトするフレームワークのメソッドです。この場合、特定のビューを呼び出すアクションにリダイレクトします。たとえば、次のようなものです。

public ActionResult Media()
    {
        //do some stuff here 

        return View();
    }
4

1 に答える 1