精通Razor语法的进来帮我看下

siaosa 2014-07-07 01:50:51
请问怎么在Razor中嵌套JavaScript脚 本?
<script>
var url='';
@if (ViewBag.F == "0") //
{
url='@Url.Action("ABC")'; ==>JS,给变量url赋值 不能正确生成代码
}
else if (ViewBag.F=="2")
var url="~/Home/Index"; ==>JS,给变量url赋值,不能正确生成代码
</script>
...全文
184 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ayanamireizero 2014-07-08
  • 打赏
  • 举报
回复
用<text></text>,或者@: 楼上的贴了<text></text>的,俺贴@:吧

@if (ViewBag.F == "0")
    {
        @:url = '@Url.Action("ABC")';
    }
newxdlysk 2014-07-08
  • 打赏
  • 举报
回复

<script>
var url='';
@if (ViewBag.F == "0")         //
{
    <text> url=@Url.Action("ABC"); </text>
}
else if (ViewBag.F == "2")
{
   <text> var url = "~/Home/Index";</text>
}
  
</script>
siaosa 2014-07-08
  • 打赏
  • 举报
回复
我也发现目前Razor不支持在嵌套JS代码
黑子大哥 2014-07-07
  • 打赏
  • 举报
回复
我试过这种写法的,貌似生成出来的结果还是url='@Url.Action("ABC")'; 它将C#代码当成字符串了, 并没有执行Url.Action 代码,当你不加上单引号的时候又编译不过,所以你需要将其绑定在一个隐藏控件里面,在后面去获取,感觉在script下是不支持写C#代码的 以前又遇到过,初步理解这样子
zhujiazhi 2014-07-07
  • 打赏
  • 举报
回复
<script> var url=''; if ("@ViewBag.F" == "0") // { url='@Url.Action("ABC")'; ==>JS,给变量url赋值 不能正确生成代码 } else if ("@ViewBag.F"=="2") url="~/Home/Index"; ==>JS,给变量url赋值,不能正确生成代码 </script>
siaosa 2014-07-07
  • 打赏
  • 举报
回复
应该怎么修改才对啊? 想根据服务器端的值,执行对应的JS代码
十三- 2014-07-07
  • 打赏
  • 举报
回复
var url=''; @if (ViewBag.F == "0") // { url='@Url.Action("ABC")'; ==>JS,给变量url赋值 不能正确生成代码 } 这不是一个url 一个是js,一个是服务器端的

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧