我正在研究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个选项,主要是可以接受的答案:
我实际上几小时前发布了这个问题(Accessing variable in another function, returns undefined - JavaScript),但仅限于javascript范围问题,但后来意识到我会发布实际问题。
任何帮助都将不胜感激。
答案 0 :(得分:2)
你的返回对象中需要一个逗号来设置逗号。它仍然不起作用,但至少可以解决您的语法错误。
return {
getMess: function(){ return value1;},
getLab: function() { return value2;}
}
此外,在setvalue()
中返回value1和value2似乎有点奇怪,我可以建议在getter中返回值吗?已在此Fiddle