一、环境概述

1、MVC4.0项目

2、bootstrap引入:

  • 生产环境版本引入:在web\Content 文件夹中引入bootstrap-3.2.0-dist,
  • 源码版本CSS引入:将bootstrap-3.2.0\docs\examples中的所有css复制到Web\Content\bootstrap-3.2.0-dist\css\themes

3、KnockoutJS引入:

  • 将knockout-3.2.0.js文件引入到Web\scripts

4、JQuery引入

二、前端CSHTML

 <div class="container">
     <div class="form-signin">
         <h2 class="form-signin-heading">Please sign in</h2>
         <input type="email" data-bind="value:accountName" autofocus="" required="" placeholder="Email address" class="form-control">
         <input type="password" data-bind="value:password" required="" placeholder="Password" class="form-control">
         <div class="row">
             <div class="col-sm-7">
                 <input type="email" data-bind="value:verifyCode" autofocus="" required="" placeholder="Email address" class="form-control">
             </div>
             <div class="col-sm-3">
                 <img height=" title="点击刷新验证码" data-bind="attr: { 'src': verifyimageSrc },click:ImageOnClick" />
             </div>
         </div>
         <div class="checkbox">
             <label>
                 <input type="checkbox" value="remember-me" data-bind="checked:isRemember"> Remember me
             </label>
         </div>
         <input type="button" class="btn btn-lg btn-primary btn-block"
                data-bind="click:submit" value="Sign in"/>
     </div>
 </div>
 <script src="/scripts/jquery-2.1.1.min.js"></script>
 <script src="/scripts/knockout-3.2.0.js"></script>
 <script src="/scripts/Account/Login.js"></script>
 <script src="/Content/bootstrap-3.2.0-dist/js/bootstrap.min.js"></script>
 <link href="/Content/bootstrap-3.2.0-dist/css/bootstrap.min.css" rel="stylesheet" />
 <link href="/Content/bootstrap-3.2.0-dist/css/themes/signin.css" rel="stylesheet" />

三、Login.js:

 var ViewModel = function () {
     //获取当前网址,如: http://localhost:8080/ems/Pages/Basic/Person.jsp
     var curWwwPath = window.document.location.href;
     //获取主机地址之后的目录,如: /ems/Pages/Basic/Person.jsp
     var pathName = window.document.location.pathname;
     var pos = curWwwPath.indexOf(pathName);
     //获取主机地址,如: http://localhost:8080
     , pos);
     var ImageNewPath = "/tool/verifyimage?time=";
     var newDate = new Date();
     var self = this;
     self.accountName = ko.observable("");
     self.password = ko.observable("");
     self.verifyCode = ko.observable("");
     self.isRemember = ko.observable("");
     self.verifyimageSrc = ko.observable("");
     GetImage(newDate, ImageNewPath, self);
     self.ImageOnClick = function () {
         newDate = new Date();
         GetImage(newDate, ImageNewPath, self);
     }
     self.submit = function (Student) {
         $.post("/account/login",
             {
                 accountName: self.accountName(),
                 password: self.password(),
                 verifyCode: self.verifyCode(),
                 sisRemember: self.isRemember(),
                 verifyimageSrc: self.verifyimageSrc(),
             },
             function (data) {
                 alert("Data Loaded: " + data.Data);
             });
     };
 }
 var GetImage = function (Date, ImageNewPath, KoObject) {
     $.get(
            "../tool/verifyimage",
            { time: Date },
            function (data) {
                KoObject.verifyimageSrc(ImageNewPath + Date);
            }
            );
 }
 $(document).ready(function () {
     ko.applyBindings(ViewModel);
 });

knockout+bootstrap+MVC 登录页实现的更多相关文章

  1. 后台跳转到登录页嵌套在iframe的问题(MVC例)

    //首页 public ActionResult Index() { if (!Request.IsAuthenticated) //判断权限,没有登录就跳回登录页 {string url = Url ...

  2. Asp.net MVC访问框架页中嵌套的iframe页面时,如果session或cookie过期,登录验证超时怎样自动跳转到登录页

    一般登录验证的过滤器中,使用验证过滤器的Redirect方法,将请求重定向到指定的URL.但是如果我们要访问的页面是一个嵌套在框架页中的iframe页面时,这种重定向只会对iframe页面凑效,也就是 ...

  3. Spring Security笔记:自定义登录页

    以下内容参考了 http://www.mkyong.com/spring-security/spring-security-form-login-example/ 接上回,在前面的Hello Worl ...

  4. 通过ajax前端后台交互/登录页和注册页前端后台交互详解/前端后台交互基础应用/几个后台函数的基础应用/php文件函数基础应用/php字符传函数基础应用/php数组函数基础应用

      前  言  PHP     学习了好久的PHP,今天做一个可以后台交互的登录页和注册页,没做什么判断,简单的了解一下. 具体的内容分析如下: ① PHP中的数据传输-->>由注册页传输 ...

  5. [转载:Q1mi]Bootstrap和基于Bootstrap的登录验证示例

    转载自:Q1mi Bootstrap介绍 Bootstrap是Twitter开源的基于HTML.CSS.JavaScript的前端框架. 它是为实现快速开发Web应用程序而设计的一套前端工具包. 它支 ...

  6. SSM登录跳转到登录页,登录页不能加载js和样式

    SSM登录跳转到登录页,登录页不能加载js和样式选用jsppage添加根路径. <% String rootPath = request.getContextPath(); %> < ...

  7. 授权过期后AJAX操作跳转到登录页的一种全局处理方式

    前两天园友JustRun分享了一篇 <菜鸟程序员之Asp.net MVC Session过期异常的处理>博文,正好自己前段时间被安排处理过这个问题,发现JustRun的方法有一点点可优化的 ...

  8. MVC 登录后重定向回最初请求的 URL FormsAuthentication.RedirectFromLoginPage

    在传统的Asp.net webForm 中如果使用 Form身份验证.登录后重定向到最初请求的页面只需使用 FormsAuthentication.RedirectFromLoginPage 但在MV ...

  9. .Net MVC 标签页

    目录 Bootstrap的标签页 适合.Net MVC的标签页 Bootstrap的标签页 下面是Bootstrap的标签页,挺好的,但是用的id,内容是固定的?我不知道怎么变成不同的视图来 < ...

随机推荐

  1. 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的

    在MVC中添加授权认证配置之后报了这样的错 原因是在整个MVC项目中有两个Web.Config文件存在authentication节点,一个Web.Config文件在View目录下,一个在根目录下 解 ...

  2. ALV表头HTML实现

    FORM frm_html_top_of_page USING cl_dd TYPE REF TO cl_dd_document. DATA: m_p TYPE i. DATA: m_buff TYP ...

  3. Foundation框架—字符串

    Foundation框架—字符串 一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:O ...

  4. ZJOI2015 一试。

    虽然早就知道会是这个结果,但是看到的成绩时候还是有些忧伤,奇迹果然还是没有发生. 想了想还是应该写篇博文 纪念一下这段经历. Day0: 报道之后直接去了宾馆,然后意外的发现冬令营时候的室友wxh就住 ...

  5. Extjs改变树节点的勾选状态

    Extjs改变树节点的勾选状态 今天系统中有处地方需要一个功能点击一个按钮后将树节点前的复选框去掉,变成没有选择的状态.网上搜索了半天,然后自己查查API,终于找到解决办法了,下面把方法贴出来. 在E ...

  6. SharePoint 2016 Beta 2 使用体验

    博客地址:http://blog.csdn.net/FoxDave 上一篇主要描述了安装SharePoint 2016的过程,本篇写一些概览性的东西. 首先打开管理中心(依然是在安装完会有Issue ...

  7. CSS3特性 盒模型 动画

    转发自0101后花园 CSS3中的动画功能分为Transitions和Animations功能,这两种功能都可以通过改变CSS中的属性值来产生动画效果. 一.Transitions 语法:transi ...

  8. LPTHW 笨办法学python 20章

    本章节讲述了,函数和文件的综合操作. 分别 执行了.1.读出文件所有内容,2.把文件重置至文件开头.3.打印一行. 我在本节作了一个小小的改良,设置了一个全局变量,记录当前应该输入哪一行,如果执行过一 ...

  9. Centos 安装mysql5.7

    1. 从mysql的官网下载mysql57-community-release-el6-8.noarch.rpm 2. 安装第一步下载的rpm rpm -ivh mysql57-community-r ...

  10. TCP发送接口的返回值

    原文链接: http://blog.csdn.net/ordeder/article/details/17240221 1. TCP发送接口:send() TCP发送数据的接口有send,write, ...