ASP.NET MVC使用@Url.Action 多个参数中间&被URL编码了
window.location.href='@Url.Action("index","CommonBridge",new { message="注册成功,系统将在3秒后跳转到登录界面",route="/login/index" })'
生成的页面中为:
window.location.href='/CommonBridge?message=%E6%B3%A8%E5%86%8C%E6%88%90%E5%8A%9F%EF%BC%8C%E7%B3%BB%E7%BB%9F%E5%B0%86%E5%9C%A83%E7%A7%92%E5%90%8E%E8%B7%B3%E8%BD%AC%E5%88%B0%E7%99%BB%E5%BD%95%E7%95%8C%E9%9D%A2&route=%2Flogin%2Findex'
可以看到 message参数和route参数之间本来应该是 &
连接,现在变成了 &
解决方案
使用 @Html.Raw
方法
window.location.href='@Html.Raw(@Url.Action("index","CommonBridge",new { message="注册成功,系统将在3秒后跳转到登录界面",route="/login/index" }))'
再看生成后的页面的内容:
window.location.href='/CommonBridge?message=%E6%B3%A8%E5%86%8C%E6%88%90%E5%8A%9F%EF%BC%8C%E7%B3%BB%E7%BB%9F%E5%B0%86%E5%9C%A83%E7%A7%92%E5%90%8E%E8%B7%B3%E8%BD%AC%E5%88%B0%E7%99%BB%E5%BD%95%E7%95%8C%E9%9D%A2&route=%2Flogin%2Findex'
问题得到解决
版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
post YES开发框架