ASP.NET MVC后台怎么重定向到嵌入iframe的页面中

一个后台管理界面,左侧是导航栏,右侧是一个iframe控制的区域,点击左侧的导航栏,右侧嵌入不同的iframe区域。
目前的需求是,登陆时验证用户有没有设置邮箱,检测到数据库没有邮箱数据,就直接跳转到设置界面,不进入主页。
伪代码:

public ActionResult Login(LoginViewModel model, string ReturnUrl)
{
    var isMail=GetMail();  //获取邮箱数据
    if(!isMail)
    {
        return RedirectToAction("Index", "Setting");
    }
    
    //Other Code
}

但是现在跳转过去,左侧的导航栏就没有,只有这整个设置页面显示,这里应该怎么设置跳转的链接,才能当作iframe嵌入到页面的右侧呢?

阅读 8.7k
3 个回答

验证邮箱由客户端发起,异步操作。

思路:
1.登录成功,跳转到欢迎页面
2.发ajax,验证邮箱
3.$("iframe").attr("src","url")

假如你的主页面叫Index.cshtml,对应的Url是/Home/Index,里面包含一个iframe,以嵌套不同的页面,并且你的Login页面不应该嵌套在这个Index中。
在你登录成功之后,应该重定向到/Home/Index,并且传递一个ViewData["IsMail"],在Index中提取ViewData["IsMail"],

@if((bool)ViewData["IsMail"]){
    <iframe src="/你的主页">
}
else{
    <iframe src="/Setting/Index">
}

希望能给予帮助。

求解决方案....

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进