jqueryを使用して.ajax()によって別のページと呼ばれるAjaxCall.aspxページがあります。AjaxCall.aspx では、すべての html タグを削除して、
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AjaxCall.aspx.cs" Inherits="_AjaxCall" %>
背後にあるコードでは、ページロードイベントは単純でした。
protected void Page_Load(object sender, EventArgs e)
{
Response.write("{ \"Testing\": \"Hello World!\" }");
}
ネットワークの Chrome 開発者ツールで ajax リクエストを監視していますが、AjaxCall.aspx ページに対して ajax リクエストを行うたびに、2 回続けてリクエストされていることに気付きました。後でデバッグ モードに入って、pageload イベントが 2 回発生したことを確認しました。掘り下げたところ、空の img src がこれに関係していることがわかりましたが、問題は、AjaxCall.aspx ページに html タグがないことです!
後で HTML の body タグと form タグを追加し直し、そのページを再度呼び出してみましたが、良いニュースは 1 回読み込まれることですが、これらの HTML タグを AjaxCall.aspx に追加するとすぐに、再度 2 回読み込まれます。
AjaxCall.aspx でこれらの html タグを使用することはできません。これは、要求されたときに json 形式のデータを返すと想定されているためです。これらの html タグを使用すると、それを呼び出したページでエラーが発生します。同時に、私が行ったすべての呼び出しで2回ロードし続けたくありません。とにかく、この問題を克服する方法はありますか?