其他分享
首页 > 其他分享> > 关于页面的js使用控制器传过来的ViewBag中字符串数据的小问题

关于页面的js使用控制器传过来的ViewBag中字符串数据的小问题

作者:互联网

关于页面的js使用控制器传过来的ViewBag中字符串数据的小问题

场景
首先我在控制器中通过ViewBag.Flag = "auth"传给视图这个字符串,然后在视图中用js获取这个值。于是代码写到:var itemId = @ViewBag.Flag; …。可是测试功能时发现效果没出来,F12调试时console中发现一个错误:var itemId = auth; 错误提示变量auth未定义。

原因
原来是这个地方@ViewBag.Flag会直接获取字面值,而不会替我们转换成字符串类型,也就是不会替我们在值字面值的外侧加上双引号。因此编译器会将这个值当成一个变量来看待,当然会报变量未定义的错误。进而不会执行后面的js代码,造成整个业务功能失败。

解决
在@ViewBag.Flag外侧加上双引号即可,让结果成为一个字符串。

标签:控制器,ViewBag,auth,js,Flag,字符串,页面
来源: https://blog.csdn.net/hb1993/article/details/114122219