ASP.Net MVC视图间的跳转

ASP.Net MVC视图间的跳转发现一个贼坑的地方,比如添加Home控制器,然后在views的home文件夹里添加Index视图和Second视图,在Index视图里想要通过超链接跳转到Second视图,需要这样写:<ahref=”/Home/second”>点击跳转1</a>@*这么写ok*@成功注意!!!!这样写就不行<ahref=”~/Views/Home/second.csh…

大家好,又见面了,我是你们的朋友全栈君。

1:同一控制器间视图跳转
发现一个贼坑的地方,比如添加Home控制器,然后在views的home文件夹里添加Index视图和Second视图,在Index视图里想要通过超链接跳转到Second视图,需要这样写:

<a href="/Home/second">点击跳转1</a>@*这么写ok*@

成功
在这里插入图片描述
注意!!!!这样写就不行

<a href="~/Views/Home/second.cshtml">点击跳转2</a>@*这么写不ok*@

因为输入引号,系统会自动提示,我就按照系统提示补全了,
在这里插入图片描述
踩坑没办法,谁叫自己不熟练呢。。。。蛋疼
2:不同控制器间视图的跳转
在学习任务中做仓库管理系统的时候,先显示登陆注册界面,只有数据库中注册的用户并且密码正确才可以进入管理系统
在这里插入图片描述
登陆界面输入用户和密码正确后,跳转到操作页面,联动数据库可以进行增删改查
在这里插入图片描述
那么点击确认按钮(type=“confirm”),输入的信息就会提交到后端,正确的话就应该跳转到操作页面,比如Operation控制器下的Page1页面,如何跳转呢?可以用Response.Redirect,
在这里插入图片描述
当时这些跳转路径的写法真是头疼,毕竟没有比较详细的教程,都是网上搜然后自己慢慢试的。然后跳转到Page1页面,自己想把cshtml的标题设置为”欢迎”+用户名,这就涉及到传值了,可以用Session,控制器和视图之间用Session很方便,可以用这几种方法改变title
在这里插入图片描述

@*设置指定标题
        1:@Session["User"]
        2:通过js获取title的DOM对象,然后设置其innerText/innerHtml属性
        3:直接document.title=@Session["User"];
        *@
         @*1:*@
    @{ 
        Session["Title"] = "欢迎" + Session["User"];
    }
    <title>@Session["Title"]</title>
    
    <script type="text/javascript">
        var newTitle = "欢迎" + "@Session["User"]";//注意获取Session要加引号,
                                                   //[]里是双引号
        @* 2:*@
        var v = document.getElementsByTagName("title");
            
        alert(newTitle);
        //v[0].innerHTML = newTitle;
        v[0].innerText = newTitle;

        @* 3 *@
        document.title = newTitle;
        </script>

结果确实改变了title
在这里插入图片描述
3:控制器里函数名写法
登录成功后,点击“增”进入对数据库进行增操作页面,控制器Operation添加了Add视图
在这里插入图片描述
然后点击”增”就调用js跳转到Add视图
在这里插入图片描述

  //跳转到v
        function Page1_to(v) {
            window.location(v);
        }

写法一定不要写错,别忘了写/
在这里插入图片描述登录成功后,标题是欢迎+用户名,点击增调用Add方法后,再返回看看
在这里插入图片描述
可见,确实调用了Add方法,搞懂了流程和写法,就不会老是出现类似下面这种报错了(比如写成Operatio/Add,少写了/)
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/162944.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 将ipad作为电脑拓展屏或分屏的简单方法[通俗易懂]

    将ipad作为电脑拓展屏或分屏的简单方法[通俗易懂]用Ipad实现电脑分屏的方法是挺简单的,但鉴于部分小白找不到合适的门路,在此重新分享一下。需要的装备:ipad电脑数据连接线方法:某宝上搜索 duetdisplay,只需1元左

    2022年8月5日
    8
  • 在线部署kubeedge 1.6详细教程(Ubuntu)

    在线部署kubeedge 1.6详细教程(Ubuntu)在线部署kubeedge1.6详细教程(Ubuntu与树莓派)基本环境:操作系统:centos7;Ubuntu;docker:20.10.7角色系统IPmastercentos7(amd64)172.16.0.114edgeubuntu(arm64)172.16.0.113kubeedge部署须知master以成功部署kubernetes,并且master结点处于ready状态.edge未执行kubeadmjoin命令kubeedge部署配置

    2022年7月21日
    25
  • android之View坐标系(view获取自身坐标的方法和点击事件中坐标的获取)

    在做一个view背景特效的时候被坐标的各个获取方法搞晕了,几篇抄来抄去的博客也没弄很清楚。现在把整个总结一下。其实只要把下面这张图看明白就没问题了。涉及到的方法一共有下面几个:view获取自身坐标:getLeft(),getTop(),getRight(),getBottom()view获取自身宽高:getHeight(),getWidth()motionEvent获取坐标:getX(),getY

    2022年3月11日
    62
  • linux下的录屏软件_Linux离线安装录屏

    linux下的录屏软件_Linux离线安装录屏在ubuntu和kalilinux下我测试了几款录屏软件,比较好用的是RecordMyDesktop。mac下录屏软件朋友介绍使用screenflow.按键显示工具keycastr。不过目前没有测试过。

    2022年9月14日
    1
  • Modelsim 10.2c 百度网盘下载「建议收藏」

    Modelsim 10.2c 百度网盘下载「建议收藏」百度网盘链接:链接:https://pan.baidu.com/s/1CGNg1Dy_S37P-obHoCncFg提取码:2eml

    2022年5月10日
    49
  • 关于MIUI12.5或者任何无法使用GMS谷歌全家桶的解决办法[通俗易懂]

    关于MIUI12.5或者任何无法使用GMS谷歌全家桶的解决办法[通俗易懂]首先感谢酷安社区的@兔子吃肉不吃草原文链接:https://www.coolapk.com/feed/24583874由于其文章全部都是图片贴的代码而且没加说明对于小白比较难懂,我在这里对其进行进一步的补充和完善必要条件:手机已经root,电脑安装有adb(不知道adb是什么没关系,下载个小米助手,里边会自带一个adb.exe)开始1.电脑连接手机手机打开usb调试,电脑连接手机2.进入adb命令行如果你之前已经安装了adb并且配置了环境变量,可以直接打开cmd

    2022年6月27日
    142

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号