0
if(httpRequest.readyState == 4 && httpRequest.status == 200)
{
    <% SetText(); %>
}

javascript のコード ビハインドからメソッドを呼び出す必要があります。メソッドは明らかに呼び出されSetText()、無効です。

私が試したこれはうまくいきませんでした。

4

7 に答える 7

5

サービスまたはハンドラーを使用して C# メソッドを公開する必要があります。アーキテクチャに応じて、ハンドラーはさまざまな方法で実装できます (MVC、.net HttpHandler、JayRock ハンドラーなど)。そして、AJAX リクエストを使用して Javascript からメソッドを呼び出す必要があります。

また、サーバー側で生成された Javascript コード内に CSharp コード ブロックを埋め込まないようにしてください。

参考文献:

于 2013-05-28T14:36:14.840 に答える
2

AJAX少なくともリクエストをしない限り、それは不可能です。そうしないと、クライアント側 (この場合は JS 経由) を介してサーバー側のメソッドにアクセスすることはできません。

于 2013-05-28T14:32:49.410 に答える
1

H 私は Javascript から C# メソッドを呼び出す に関する同様の質問に答えました。AJAX を使用した例を提供しました

これが役立つことを願っています。

于 2016-06-10T16:11:40.280 に答える
0

1 つの ajax 呼び出しを行い、そこで接続が正常かどうかを確認します。接続に問題がない場合は、(サーバー側で) 実際の呼び出しを行い、データを返します。

非同期リクエストを作成したため、ページ データにエラー メッセージが表示されることはありません。エラーが発生した場合でも、エラー ハンドラーでエラーが発生し、エラーが発生したときに何をすべきかがわかります。

クライアント コードがサーバー メソッドに直接接続する必要があるシナリオはありません。あなたのデザインがそのようなものである場合、いつでもそれを回避することができます。

于 2013-05-28T14:58:11.947 に答える
0

これは、AJAX を使用して実現できます。

現在、HTTPHandler を使用して AJAX 経由で呼び出しを行っています。次のようなコードでサービス「.asmx」を使用してハンドラーにアクセスしています

<%@ WebService Language="C#" Class="MyClass" %>
于 2013-05-28T15:11:05.487 に答える
0

このリンクを試してください http://www.c-sharpcorner.com/UploadFile/abhikumarvatsa/calling-an-Asp-Net-C-Sharp-method-web-method-using-javascript/

はい、しかしajax呼び出しなしでは不可能です:(。

また、必要なすべての jquery ファイルをインポートしたこと、および ajax 呼び出し用に記述した関数が「静的」であることを確認してください。

残りはクリアされます リンクに従ってください

于 2013-05-29T11:28:50.910 に答える
0

クライアントは、質問で指定した方法でサーバー メソッドにアクセスできません。AJAX のようなものを使用しないと、やりたいことはできません。

あなたがやろうとしていることを説明してください。おそらく誰かがあなたの問題を解決する別の方法を説明できるでしょう。

于 2013-05-28T14:33:45.527 に答える