我试图在asp.net mvc中构建一个url但是对象路由值数据稍后会通过ajax传入。基本上发生了以下情况:
我点击一个按钮,它对服务器进行ajax调用以完成一些工作。如果通话成功,我必须重定向到另一个页面。我尝试在方法中进行重定向操作,但意识到它不会起作用,因为它是ajax。所以我决定将success参数中的以下内容添加到我的ajax调用中:
window.location.href = '@Url.Action("view", "controller", new { data=data })';
但很明显,当页面最初呈现时,它会被编译(或构建或者编译)为字符串,而data=data
部分是ajax调用后数据进入的部分。
还有另一种方法将数据合并到我的网址中吗?
答案 0 :(得分:1)
URL帮助器应该在页面渲染时为您提供控制器/操作URL,然后您可以使用如下所示的javascript附加参数。
window.location.href = '@Url.Action("view", "controller")?data='+data;