-1

javascript から .cs クラス ファイル (C#) 関数を呼び出すことに疑いがあります。私のコード: call_cs_function_from_js のようなクラス ファイル (.cs) があります。

------------------------------------------------------------------


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

namespace call_cs_function_from_js
{
    public class cal_lcs_function_from_js
    {
        public void getdata()
        {

        }
    }
}

これはJavaScriptコードファイルです:

<script type="text/javascript">
function call(){
  cal_lcs_function_from_js.getdata();  //This way is not working 
  alert('called');
}
</script>

ここで、call() から cal_lcs_function_from_js の getdata を呼び出したい (.js を意味する)。ボタンのクリック時に call() が呼び出されます。

他の方法を教えてください。

4

2 に答える 2

5

JavaScript コードから C# 関数を直接呼び出すことはできません。JavaScript はクライアント側で実行され、C# 関数はサーバー上に存在します。そのためには、Web サービスを作成し、JavaScript を使用してそのサービスを呼び出す必要がありますAjax

アップデート:

  1. 最初に名前空間using System.Web.Services;を Web ページに追加します。
  2. 次のメソッドをページに追加します

    [WebMethod]
    public string GetData()
    {
        return ("");
    }
    
  3. を使用してメソッドを呼び出しAjaxます。

    $.ajax({ type: "GET", url: "/GetData", success: 関数 (データ) { });

于 2012-05-21T06:33:01.187 に答える
0

JavaScript を使用して C# 関数を呼び出す唯一の方法は、ASP.NET ページ内で C# 関数を実行している場合です。次に、JavaScript からの ajax 呼び出しを使用して ASP.Net ページを呼び出し、関数の結果を取得します。

http://api.jquery.com/jQuery.ajax/

function call(){
  $.ajax({
    url: "/cal_lcs_function_from_js"
  }).done(function() { 
    alert('called');
  });
}

ここで、「/cal_lcs_function_from_js」は、JavaScript ファイルが実行されているのと同じ Web サーバー上の ASP.net で実行されているページです。

于 2012-05-21T06:32:33.370 に答える