3

JavaScriptがどんどん大きくなっているので、ASPXファイルをクリーンアップしたいと思います。

問題は、私のjavascriptの多くが多くのインラインC#呼び出しを伴うことです。すなわち:

'<%=C# method call)%>'

しかし、これは.jsファイルに隠されていると機能しないようです。

JavaScriptをjsファイルに分離できるようにするための回避策はありますか?

4

2 に答える 2

2

確かに、.jsファイルからC#を呼び出すことはできません。C#コードは、クライアントではなくサーバーで実行されます。.jsファイルはサーバー上で解析されません。

たとえば、サーバー側のC#コードによって動的に生成されるJavaScriptとは対照的に、実際のJavaScriptを.jsファイルに入れることを妨げるものは何もありません。

JavaScriptを生成するC#コードがたくさんある場合でも、部分ビューを使用してコードを整理できます(これは、MVCの用語ですが、標準のASP.Netにも同様のものがあると確信しています)。

于 2012-08-17T00:29:27.277 に答える
0

WebMethodsを使用して、Ajaxを介して呼び出すことができます。

[WebMethod]
public static int SomeMethod()
{
    ...
}

次に、Ajaxで呼び出します。(この例ではjQueryを使用しています。)

$.ajax({
    type:        "POST"  
    url:         "/yourwebpage.aspx/SomeMethod"
    data:        "{}"
    contentType: "application/json; charset=utf-8",
    dataType:    "json",
    success:     function(data) {
                     // do something with the return value
                 }
});
于 2012-08-17T00:40:25.210 に答える