2012-02-22 13 views
3

をメソッドを使用します。私は以下のクラス持つスクリプト#クラスに

[GlobalMethods] 
internal static class JQueryTest 
{ 
    static JQueryTest() 
    { 
     jQuery.OnDocumentReady(delegate 
            { 
             test(); 
             test2(); 
            }); 
    } 

    [ScriptName("test")] 
    static void test() 
    { 
     Script.Alert("one"); 
    } 

    [ScriptName("test2")] 
    static void test2() 
    { 
     Script.Alert("two"); 
    } 
} 

これは、次のJavaScriptを生成:

//! Echo.JQueryScript.debug.js 
// 

(function($) { 

Type.registerNamespace('Echo.JQueryScript'); 

//////////////////////////////////////////////////////////////////////////////// 
// Echo.JQueryScript._jQueryTest 

window.test = function Echo_JQueryScript__jQueryTest$test() { 
    alert('one'); 
} 
window.test2 = function Echo_JQueryScript__jQueryTest$test2() { 
    alert('two'); 
} 


(function() { 
    $(function() { 
     test(); 
     test2(); 
    }); 
})(); 
})(jQuery); 

//! This script was generated using Script# v0.7.4.0 

これはほぼ正しいことを、私はちょうどの終わりにセミコロンを必要としますwindow.test = ...とwindow.test2ラインは、IE = ...:

window.test = function Echo_JQueryScript__jQueryTest$test() { 
    alert('one'); 
}; 
window.test2 = function Echo_JQueryScript__jQueryTest$test2() { 
    alert('two'); 
}; 

他の誰かが、私がやるべきものを私に言うことができるしてください?

ステュー

+0

なぜセミコロンが必要ですか? – DuckMaestro

+0

これは単なるコード行で、そのメソッドに変数を代入しているだけです。 javascriptは実行時に最後のエントリのみを認識しますので、最初のものを完全に無視して "2"だけを表示します。 – Stu

答えて

0

おかげで私たちは、私の経験では非常によくangularJSをサポートしていないスクリプト#から上に移動終わりました。

関連する問題