Javascript配合jQuery实现流畅的前端验证
做前端时一般都习惯用JavaScript进行表单的简单验证比如非空验证和正则表达式验证,这样过滤后的数据提交到服务端再由专门的控制器做数据处理,这样能减轻服务器的负担,下面看一下前端验证的简单步骤:
首先举一个简单的表单作为例子:
<form action="query.php" name="form1" method="get" target="_blank">
<label>请输入要查询的内容:</label>
<br />
<br />
<input name="neirong" type="text" class="input1" />
<input type="submit" value="查 询" class="anniu" onclick="return yanzheng()" />
</form>
这个表单样式都在class里定义了,这个不再具体写出,具体样式如图:

那么一般情况我们用JavaScript验证的脚本如下:
function yanzheng()
{
var shuju=document.form1.neirong;
if(shuju.value==0)
{
alert("内容不能为空!");
shuju.focus(); //返回焦点到输入框
return false;
}
}
这就是简单的非空验证,需要注意,JavaScript定义变量是要和form表单的名称对应,提交按钮的onclick事件要和方法对应,如果不为空默认就返回true,方法中就不用写了

这个时候如果内容为空提交表单,会弹出提示框,这是传统的验证方式,下面用jQuery实现一个简单的滑动提示效果
首先,要加载jQuery库,在表单前面加上一句
<script type="text/javascript" src="jQuery/jquery-1.11.1.min.js"></script>
这个库谷歌和微软网站都可以下载到,微软没被墙,去微软下载吧,里面有好多版本的库,当然也可以直接引用,减小自己服务器压力,jQuery库链接:http://www.asp.net/ajax/cdn#jQuery_Releases_on_the_CDN_0
然后表单适当位置加一行提示语,我的是放在上面表单代码的第5行后面,感觉挺合适,比如:
<div style="margin-left:360px; color:#09f; font-family:微软雅黑; margin-top:20px; display:none;" class="yanzhengtishi">请输入内容哦!</div>
style的内容也可以放到头部或单独样式文件去,注意一定要有display:none;这一句,意思是默认该div内容不显示,写在class里就比如下面:
.yanzhengtishi{
margin-left:360px;
color:#09f;
font-family:微软雅黑;
margin-top:20px;
display:none;
}
<div class="yanzhengtishi">请输入内容哦!</div>
然后添加jQuery代码,把刚才JavaScript代码替换:
function yanzheng()
{
var shuju=document.form1.neirong;
if(shuju.value==0)
{
$(document).ready(function(){
$(".yanzhengtishi").slideDown("slow");
});
shuju.focus();
return false;
}else{
$(document).ready(function(){
$(".yanzhengtishi").slideUp("slow");
});
}
}
else子句内容代表,如果内容不为空则重新隐藏提示,注意提示内容的class要加入jQuery的位置,总体来说就这么简单,只是我表达的有些啰嗦,大体变化就如下图,

其实jQuery还能实现很多纯点击事件非常炫酷的特效,不用自己编写逻辑就可以实现,这确实是一个非常有趣的库
Javascript配合jQuery实现流畅的前端验证的更多相关文章
- MVC笔记2:mvc+jquery.validate.js 进行前端验证
1.引用如下js和css 代码 <link href="@Url.Content("~/Content/Site.css")" rel="sty ...
- jQuery结合Ajax实现简单的前端验证和服务端查询
上篇文章写了简单的前端验证由传统的JavaScript转向流畅的jQuery滑动验证,现在拓展一下,使用Ajax实现用户体验比较好的异步查询,同样还是从建立一个简单的表单开始 <form nam ...
- 关于引入多个jquery冲突的问题(附一个很好用的validate前端验证框架及使用方法)
废话不多说,进入正题: 如果一个jsp中想要使用两个不同版本的jquery怎么办呢?客官往下看: <script src="${ctxStatic}/jquery/jquery-1.8 ...
- 简单的jQuery前端验证码校验
简单的jQuery前端验证码校验2 html; <!DOCTYPE html> <html lang="zh-cn"> <head> <m ...
- 在C#后端处理一些结果然传给前端Javascript或是jQuery
在C#后端处理一些结果然传给前端Javascript或是jQuery,以前Insus.NET有做过一个例子<把CS值传给JS使用 >http://www.cnblogs.com/insus ...
- Web前端学习笔记之JavaScript、jQuery、AJAX、JSON的区别
官网的英文解释: javascript和jQuery有点关系,js是一种脚本语言,主要用于客户端,现在主要用于实现一些网页效果. jquery是js的一个库,你可以认为是对js的补充,提供了很多方便易 ...
- 使用jquery.validate组件进行前端数据验证并实现异步提交前验证检查
学习如鹏网掌上组的项目开发,使用到了前端验证,视频里使用的ValidateForm验证框架,但是我使用的Hui的框架中使用的是jquery.validate验证框架 所以自行学习jquery.vali ...
- 前端验证,jquery.validate插件
jQuery Validate 简介: jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用 ...
- 修改.net mvc中前端验证信息的显示方式
最近一直在学习.net core的用法.想法是通过写一个新闻系统来熟悉一下这个最新的技术.其实,我以前一直对.net技术都是浅尝辄止,最主要原因是没有动力.平时写企业站因为时间原因,不是使用php的框 ...
随机推荐
- Linux 线程(进程)数限制分析
1.问题来源公司线上环境出现MQ不能接受消息的异常,运维和开发人员临时切换另一台服务器的MQ后恢复.同时运维人员反馈在出现问题的服务器上很多基本的命令都不能运行,出现如下错误:2. 初步原因分析和 ...
- JSP表单处理
当需要通过从浏览器获取一些信息,在许多情况下,最终给到Web服务器后台程序.浏览器使用两种方法将这些信息传递给Web服务器.这些方法是GET方法和POST方法. GET 方法: GET方法将追加到页面 ...
- SSH整合之spring整合struts2(续上)
一.项目结构 二.新建UserAction,继承自ActionSupport,并实现ModelDriven<User>接口:getModel方法是用来装配对象属性的:注意,userServ ...
- ThinkPHP3.2 行为扩展以及插件机制介绍!
首先行为扩展这个概念是TP架构的核心组成之一,关于行为的解释我就粗略的概括一下吧:TP在从接受到HTTP请求到最终将视图输出,期间经历的很多步骤,这些步骤大家可以在http://document.th ...
- 理解模板引擎Razor 的原理(转载)
Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.简洁的语法与.NET Framework 结合,广泛应用于ASP.NET MVC 项目.Razor Pad是一 ...
- ORA-00931: missing identifier ORA-06512: at "SYS.DBMS_UTILITY"
Database db = DatabaseFactory.CreateDatabase(); string sql = "SELECT * FROM table&qu ...
- vim设置语法高亮
在vim安装目录中的_vimrc修改,加上以下的代码. set nu! colorscheme desert syntax enable syntax on
- 搜狗2013年校园招聘研发类笔试试卷之C/C++类
今天无聊在网上搜了下今年各大NB IT公司的笔试题,搜到了搜狗的,只有扫描版的试卷没有电子版也没有答案,就拿来做了做,题目非常多,涉及到C/C++.Java.数据结构.Android.IOS.Java ...
- MyISAM 和 InnoDB 讲解
MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基本的差别为:MyISAM类型不支持事务处理等高级处 ...
- Forth scrum meeting - 2015/10/29
今天下午,我们终于要到了MOOC服务器端开发人员的联系方式,于是我们小组派了三名同学去实验室与他们进行了交流,并咨询了他们一些关于API接口的问题.他们也对我们这个客户端的开发提出了一些建议. 开发团 ...