0

JavaScript を Web サイトに統合するのは初めてですが、Web サイトで頻繁に JavaScript が必要になります。

例を次に示します。次の関数があると仮定します。

showAlert()

私が持っているとしましょう:

<div id="some_div">

</div>

誰かがこれを行う例を教えてくれませんか: ボタンがあり、ユーザーがそれをクリックすると、バックエンドでイベントが発生し、C# ファイルで何らかのメソッドが呼び出されます。次に、私のC#ファイルは、showAlert()を呼び出してdivにアラートを表示するフロントエンドの他のjavascriptメソッドを呼び出すことができるはずです。

これは、私が情報を見つけることができないようです。

サーバーとの間で情報をやり取りする基本的な考え方。これについて何か助けていただければ幸いです。

ありがとう

4

1 に答える 1

3

あなたの最善の策は、jquery のようなフレームワークを使用してから、ボタンにバインドし、サービスを呼び出して、応答を処理することです。以下はその簡単な例です。

$(document).ready(function()
    $('#Button1').bind('click', function () { 
        // This grabs the page you are in so that you can call it correctly
        var pagePath = window.location.pathname;  
        var testId = $("#some_div").val();
        var url = pagePath + "/TestService";          
        $.post(url, { id: testId },
            function (data) {
                showAlert(data);
            }
        });
    };
});

まず、ある時点でドキュメントの準備ができていることを確認する必要があります。Bind を使用すると、ドキュメントの読み込み時にボタンをバインドできます。次に、それをクリックして、testId を取得し、サービスを呼び出し、成功コールバックでデータ応答を処理する匿名関数を実行します。

あなたが正しい方向に進むことを願っています!

編集: バックエンド Web フォームの「サービス」公開を追加

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e) 
    {

    }

    [WebMethod]
    public static string TestService(string id) 
    {
        var string = DBCollection.FirstOrDefault(x => x.id == id); // Or whatever you want to return the data
        return "You called me on " + DateTime.Now.ToString() + "with " + string;
    }
}

これにより、ページで公開されている「WebMethod」を呼び出すことができます。これに関する詳細については、次のリンクを参照してください。

http://www.tugberkugurlu.com/archive/asp-net-web-forms---calling-web-service-page-methods-using-jquery

編集: Webフォームでこのタイプのアプローチを実行する場合の追加の考慮事項。 asp.net webformsでjqueryを使用してwebmethodを呼び出す

于 2013-01-31T14:44:58.703 に答える