我有一个棘手的问题。
是否可以采用C#const并在Jquery的.JS脚本中使用它?
这是const的外观:
public class UserRoles
{
public const string Read = "Read";
public const string ReadWrite = "ReadWrite";
}
答案 0 :(得分:2)
这取决于您要使用这些值做什么。
您可以在UI初始化时将值放在js对象中(例如,Index.html中的window.YourAppName.Constants.Read =“ your C#constant”)。然后,一旦文档加载完成,就可以加载jquery脚本并利用常量值。
或者,如果您使用的是MVC,则可以在视图中使用标签,从而可以访问C#代码(viewmodel,enums等)。但是,如果您有很多js代码,那么最好将其保存在js文件中,在这种情况下,我会选择第一个选项。
答案 1 :(得分:1)
您不能在JavaScript文件中使用Razor,必须将变量传递到Viewbag /数据或模型中的Razor视图。
然后,您可以在共享布局中创建一个返回此变量的javascript函数,然后在.JS文件中,只要该变量在之后加载,就可以调用该函数以获取该变量。