html结构,用到了label与span

<label class="relative"><input type="text" name="name" id="name" class="colorblur" size="40" value="{sh:$info.name}"/><span class="msg_dialog"></span></label>

添加样式

.relative{
position: relative;
font-weight: normal; }
.msg_dialog{
display: block;
width:200px;
height:auto;
position: absolute;
right:-200px;
top:5px;
color:red;
overflow: hidden;
}

表单添加checkForm()

<form action="{sh::U('User/addAgent')}" method="post" id="myform" onsubmit="return checkform();">
function checkform(){
if($("#name").val() == ''){
showdialog($("#name"),"姓名不能为空");
$("#name").focus();
return false;
} var email_val = $("#email").val();
if(email_val == ''){
showdialog($("#email"),"邮箱不能为空");
$("#email").focus();
return false;
}
reg=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
if(!reg.test(email_val)){
showdialog($("#email"),"邮箱不合法");
$("#email").focus();
return false;
} // ajax email是否已存在
if(ajaxCheck('email',email_val) == 1){
showdialog($("#email"),"邮箱已存在,请勿重复添加");
$("#email").focus();
return false;
} var tel_val = $("#tel").val();
if(tel_val == '' || tel_val.length != '11'){
showdialog($("#tel"),"手机不能为空或手机号有误");
$("#tel").focus();
return false;
} // ajax 验证号码是否已存在
if(ajaxCheck('tel',tel_val) == 1){
showdialog($("#tel"),"号码已存在");
$("#tel").focus();
return false;
} var reg = /^[0-9a-zA-Z]+$/;
if($("#password").val() == '' || $("#password").val().length <6 || !reg.test($("#password").val())){
showdialog($("#password"),"密码不能为空且必须为字符或数字");
$("#password").focus();
return false;
} if($("#map_lng").val() == ''){
showdialog($("#map_lng"),"请标注代理商位置");
return false;
}
}

showdialog() 方法负责处理提示信息

function showdialog(obj,msg){
obj.siblings(".msg_dialog").text(msg).show().delay(2000).hide(0);
}

delay(2000).hide(0) 延迟两秒后消失
ajax验证

// ajax验证邮箱号码
function ajaxCheck(t,v){
var res = '';
$.ajax({
tpye:"post",
url:"{sh::U('User/ajax','todo=checkVal')}",
data:"t="+t+"&v="+v,
async: false,
success:function(data){
res = data;
}
});
return res;
}
public function ajax(){
$todo = $this->_request('todo','trim');
switch ($todo) {
case 'checkVal':
$t = $this->_request('t','trim');
$v = $this->_request('v','trim');
if(empty($t) || empty($v)){
exit('0');
}
$agentModel = M('Agent');
if($t == 'email'){
$count_email = $agentModel->where(array('email'=>$v))->count();
if($count_email > 0){
exit('1');
}
} if($t == 'tel'){
$count_tel = $agentModel->where(array('tel'=>$v))->count();
if($count_tel > 0){
exit('1');
}
}
break; default:
# code...
break;
}
}

效果

两秒后红色提示将消失

自制简单表单验证relative与absolute定位的更多相关文章

  1. JS简单表单验证

    这里我是写了一个简单的注册表单验证功能,亲测有效,一起来看看吧! 首先我的HTML代码是这样的: class大家可以忽略一下,这里我项目使用的是bootstrap的样式. 输入用户名和密码用的是正则表 ...

  2. 如何利用jQuery进行简单表单验证

    <!DOCTYPE html><html><head><meta charset="utf-8"><meta name=&qu ...

  3. jq之简单表单验证

    <body> <form method="post" action=""> <div class="int"& ...

  4. 模仿 BootstrapValidator 自制 模块化 表单验证

    index.html : <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  5. 关于ajax用户名验证和jquery实现简单表单验证

    首先来说用户名验证: 前台: <tr> <td class="tableleft">教师编号</td> <td><input ...

  6. AJAX案例二:简单表单验证

    案例:如果用户名输入为张三,那么在失去焦点时后面会显示该用户名已被注册,否则显示可以注册! <%@ page language="java" import="jav ...

  7. JavaScrip——简单练习(输出方式,简单表单验证)

    <script> //输出方式 document.write(Date());//获取当前时间 document.write(1); document.write("<p& ...

  8. AngularJS的简单表单验证

    代码下载:https://files.cnblogs.com/files/xiandedanteng/angularjsCheckSimpleForm.rar 代码: <!DOCTYPE HTM ...

  9. 初学structs2,表单验证

    一.简单表单验证示例 structs.xml配置 <struts> <package name="validate" namespace="/valid ...

随机推荐

  1. 【转】git 学习笔记( 随时更新中…… 最后更新日期201304281518)--不错

    原文网址:http://blog.csdn.net/yasin_lee/article/details/5975070 GIT 是版本管理的未来!   推荐几个GIT教程网站 http://www-c ...

  2. c++ 02

    一.堆内存的动态分配与释放 malloc/calloc/realloc/free new/delete:详见memory.cpp 1.通过new运算符分配单个变量 数据类型* 指针变量 = new 数 ...

  3. hdu 1159 Common Subsequence(LCS最长公共子序列)

    Common Subsequence Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Other ...

  4. Direct3D 光照和材质

      今天我们来学习下Direct3D里面的光源和材质. 四大光照类型: 环境光 Ambient Light 一个物体没有被光照直接照射,通过每一些物体反射的光线到达这个物体,它也有可能被看到.这种称为 ...

  5. JConsole 连接配置

    远程监控配置 JDK配置 在%JAVA_HOME%/jre/lib/management目录下,jmxremote.password.template.jmxremote.password需要修改配置 ...

  6. Android窗口管理服务WindowManagerService对输入法窗口(Input Method Window)的管理分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8526644 在Android系统中,输入法窗口 ...

  7. easyui-window

    <div id="win" class="easyui-window" title="My Window" style="w ...

  8. undefined和null的区别

    在javascript中undefined和null几乎是没有区别的 undefined==null;//true;   区别:   null是一个表示“无”的对象,转为数值为0:或者说没有对象,此处 ...

  9. 黑马程序员 ——Java SE(1)

    ----<a href="http://www.itheima.com" target="blank">Java培训.Android培训.iOS培训 ...

  10. jquery怎么获取URL的参数

    function request(paras) {                var url = location.href;                var paraString = ur ...