knockout+bootstrap+MVC 登录页实现
一、环境概述
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 登录页实现的更多相关文章
- 后台跳转到登录页嵌套在iframe的问题(MVC例)
//首页 public ActionResult Index() { if (!Request.IsAuthenticated) //判断权限,没有登录就跳回登录页 {string url = Url ...
- Asp.net MVC访问框架页中嵌套的iframe页面时,如果session或cookie过期,登录验证超时怎样自动跳转到登录页
一般登录验证的过滤器中,使用验证过滤器的Redirect方法,将请求重定向到指定的URL.但是如果我们要访问的页面是一个嵌套在框架页中的iframe页面时,这种重定向只会对iframe页面凑效,也就是 ...
- Spring Security笔记:自定义登录页
以下内容参考了 http://www.mkyong.com/spring-security/spring-security-form-login-example/ 接上回,在前面的Hello Worl ...
- 通过ajax前端后台交互/登录页和注册页前端后台交互详解/前端后台交互基础应用/几个后台函数的基础应用/php文件函数基础应用/php字符传函数基础应用/php数组函数基础应用
前 言 PHP 学习了好久的PHP,今天做一个可以后台交互的登录页和注册页,没做什么判断,简单的了解一下. 具体的内容分析如下: ① PHP中的数据传输-->>由注册页传输 ...
- [转载:Q1mi]Bootstrap和基于Bootstrap的登录验证示例
转载自:Q1mi Bootstrap介绍 Bootstrap是Twitter开源的基于HTML.CSS.JavaScript的前端框架. 它是为实现快速开发Web应用程序而设计的一套前端工具包. 它支 ...
- SSM登录跳转到登录页,登录页不能加载js和样式
SSM登录跳转到登录页,登录页不能加载js和样式选用jsppage添加根路径. <% String rootPath = request.getContextPath(); %> < ...
- 授权过期后AJAX操作跳转到登录页的一种全局处理方式
前两天园友JustRun分享了一篇 <菜鸟程序员之Asp.net MVC Session过期异常的处理>博文,正好自己前段时间被安排处理过这个问题,发现JustRun的方法有一点点可优化的 ...
- MVC 登录后重定向回最初请求的 URL FormsAuthentication.RedirectFromLoginPage
在传统的Asp.net webForm 中如果使用 Form身份验证.登录后重定向到最初请求的页面只需使用 FormsAuthentication.RedirectFromLoginPage 但在MV ...
- .Net MVC 标签页
目录 Bootstrap的标签页 适合.Net MVC的标签页 Bootstrap的标签页 下面是Bootstrap的标签页,挺好的,但是用的id,内容是固定的?我不知道怎么变成不同的视图来 < ...
随机推荐
- 关于tomcat会在url末尾自动追加斜杠(/)
今天,突然发现一个问题, 比如我的请求路径为 http://ip:port/my_project/myapp, 在浏览器中敲入这个地址,然后会显示 http://ip:port/my_project ...
- Windows下使用xShell向远程Linux上传文件
上传文件使用rz与sz命令,远程Linux系统上需要安装lrzsz工具包 下载安装包lrzsz-0.12.20.tar.gz: http://www.linuxidc.com/Linux/2010- ...
- Aptana Studio 2启动时提示 Workspace Cannot Be Created 解决办法
今天在安装Aptana Studio 2时出现这个东东,卸载后再安装依旧不行最后找到原因 原因 : 就是由于你把“我的文档”的位置修改造成的. 但Aptana还以为 “我的文档”的位置 是在系统的默认 ...
- 初学者:JSP登陆界面
学生登陆查询系统 1 程序的主要功能及特点 实现一个登录界面的基本功能,具体要求: 登录界面login.jsp含有表单,用户能够输入用户名和密码,并提交表单给verify.jsp. Verify.js ...
- iOS开发UI篇—简单的浏览器查看程序
iOS开发UI篇—简单的浏览器查看程序 一.程序实现要求 1.要求 2. 界面分析 (1) 需要读取或修改属性的控件需要设置属性 序号标签 图片 图片描述 左边按钮 右边按钮 (2) 需要监听响应事件 ...
- XListView理念
package com.example.testxml1; import java.io.ByteArrayInputStream;import java.io.InputStream;import ...
- PHP 缓存扩展opcache
opcache (全程 zend opcache): 从php5.5开始,默认提供的php脚本缓存扩展,编译php5.5时加上参数--enable-opcache就可以编译opcache了,只是要启用 ...
- IntelliJ IDEA 使用总结
IntelliJ IDEA 使用总结 http://my.oschina.net/xianggao/blog/97539 IntelliJ IDEA 问题解决:1.乱码,主要是快捷键的字样显示乱码 中 ...
- android studio 开启genymotion 出现"failed to create framebuffer image"
出现错误 Unable to start the virtul device To start virtual devices, make sure that your video card supp ...
- HM NIS Edit 2.0.3 Win32 Error. Code:740.请求的操作需要提升
使用NSIS安装向导,生成脚本后,按F9后,居然提示:HM NIS Edit 2.0.3 Win32 Error. Code:740.请求的操作需要提升 一开始就出错了,还真不顺. 在网上搜索了一下, ...