1

私はMVCアプリケーションに取り組んでおり、リソースファイルを読み取って値を取得し、JavaScriptファイルに渡す必要があります。このために、cshtmlファイルから別のjsファイルに記述されたjs関数を呼び出しています。この関数は、リソース ファイルの値を持つパラメーターを JavaScript の関数に渡します。js ファイルでは、上記の関数と同じ名前空間に別の関数があり、これらのリソース ファイルの値を読み取る必要があります。どうやってやるの?

私のcshtmlコード:

<script type="text/javascript">
Mynamespace.function2("@Globalstrings.Value1","@Globalstrings.Value2");
</script>

JS ファイル:

var Mynamespace ={
    function1: function(){
        Mynamespace.function2.getMess();   // I need to access value1 here in this function
    },

    function2: function(message1,message2){
        var value1 = message1;
        var value2 = message2;
        return{
          getMess: function(){ return value1;},
          getLab: function() { return value2;}
        }
    }
}

上記を試したところ、getMess で未定義になっています。したがって、これに対する答えとして受け入れられる主に2つのオプションがあります。

  1. jsでリソースファイルの値を読み取る他の方法はありますか?
  2. 上記の js コードの修正

私は実際にこの質問を数時間前に投稿しました ( Accessing variable in another function, returns undefined - JavaScript )、javascript スコープの問題のみに限定しましたが、実際の問題を投稿することに気付きました。

どんな助けでも大歓迎です。

4

1 に答える 1

2

setvalues の戻りオブジェクトにはカンマが必要です。それでもうまくいきませんが、少なくとも構文エラーは修正されます。

return {
    getMess: function(){ return value1;},
    getLab: function() { return value2;}
}

また、 で value1 と value2 を返すのはちょっと奇妙に思えsetvalue()ますが、getter で値を返すことを提案できますか? このFiddleで修正およびリファクタリングされました

于 2013-10-18T16:25:40.957 に答える