ホームページ >バックエンド開発 >C++ >ASP.NET MVC コントローラーへの AJAX 呼び出しを行うにはどうすればよいですか?

ASP.NET MVC コントローラーへの AJAX 呼び出しを行うにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-15 12:26:44159ブラウズ

How to Make AJAX Calls to ASP.NET MVC Controllers?

ASP.NET MVC コントローラーへの AJAX 呼び出し: 実践ガイド

AJAX 呼び出しにより、ページを更新せずにシームレスなサーバー通信が実現し、ユーザー エクスペリエンスが大幅に向上します。 このガイドでは、ASP.NET MVC 内で AJAX 呼び出しを簡単に実装する方法を説明します。

コントローラーのアクションとコードの表示

簡単なコントローラーのアクションを見てみましょう:

<code class="language-csharp">public ActionResult FirstAjax()
{
    return Json("chamara", JsonRequestBehavior.AllowGet);
}</code>

動的 URL 生成に Razor 構文を活用した、対応する JavaScript AJAX 呼び出しは次のようになります。

<code class="language-javascript">$.ajax({
    url: '@Url.Action("FirstAjax", "AjaxTest")',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});

function successFunc(data, status) {
    alert(data);
}

function errorFunc() {
    alert('error');
}</code>

トラブルシューティング: 不要な data パラメータ

最初のコーディング エラーには、データが送信されていないにもかかわらず、AJAX 呼び出しに不要な data 属性が含まれていました。 data パラメータ (例: data: param = "") を削除すると、この問題は解決されました。 Razor 内で @Url.Action を使用すると、URL がコントローラーとアクションを正しくターゲットにすることが保証されます。

POST リクエストの実装

POST リクエストの場合は、data パラメータを含めます:

<code class="language-javascript">data: { a: "testing" },</code>

その後、コントローラーのアクションを [HttpPost] 属性で修飾する必要があります。

<code class="language-csharp">[HttpPost]
public ActionResult FirstAjax(string a)
{
    return Json("chamara", JsonRequestBehavior.AllowGet);
}</code>

この包括的なガイドでは、ASP.NET MVC コントローラーへの AJAX 呼び出しを行う簡単なプロセスを説明し、堅牢で効率的な Web 開発のための一般的な落とし穴とベスト プラクティスを強調しています。

以上がASP.NET MVC コントローラーへの AJAX 呼び出しを行うにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。