c# - 将 Viewbag 分配给 js 变量会引发异常

标签 c# asp.net-mvc razor viewbag

我想将 viewbag 分配给我的 javascript 变量以比较模型中的某些值

<script>

    var uid = "..."; // this retrieves some variable from external server
    @ViewBag.someId = uid;

</script>
...
@If(Model.AppDataFbId == ViewBag.someId){ ... }

但这会引发异常:

Uncaught SyntaxError: Unexpected token =

我能做什么?

最佳答案

作为comment said , ViewBag 是服务器端代码,您不能在 C# 代码块中使用 js 变量设置 ViewBag,但可以使用 ViewBag 值设置 js 变量。喜欢:

<script>
    var uid ='@ViewBag.someId';
</script>

如果您只想将 Model.AppDataFbId 与 js 变量(uid)进行比较,请在 js 代码中添加逻辑。

 <script>
  function compare(){
     if('@Model.AppDataFbId'==uid){
         //other code   
     }
  }
 </script>

关于c# - 将 Viewbag 分配给 js 变量会引发异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45416429/

相关文章:

c# - 声音频率 FFT

asp.net-mvc - SimpleMembershipProvider

asp.net-mvc-3 - MVC3 Razor 中的多语言实现

asp.net-core - 从 razor 页面中的 javascript 调用模型函数

c# - 在 Entity Framework 查询中引用临时表

c# - APIController FromBody arg 有时在放置请求上为空,但原始请求具有有效主体

c# - 在 Integrated Security = False 的客户端机器上用 SQL LocalDB 替换 SQL Compact

asp.net-mvc - 在 MVC 中定义 html5 数据属性

jQuery $(document).ready 和 ASP.NET MVC Partial

c# - 没有名称属性的下拉列表