(function($) {
jQuery.fn.groupBsave = function() {
var errcnt = 0;
this.each(function() {
var $err = $(this).next();
$err.beforeSave({ type: -1 });
if ($err.attr("ispass") == '1') {
errcnt += $err.beforeSave({ type: -2, testValue: $(this).val() });
}
else if ($(this).val().length <= 0 || $(this).val() == '-1') {
errcnt += $err.beforeSave({ type: 1 }); $(this).focus();
}
else {
errcnt += $err.beforeSave({ testValue: $(this).val() });
}
});
return errcnt;
}
})(jQuery);
(function($) {
jQuery.fn.beforeSave = function(options) {
var defaults = {
type: 0, //正确 1错误 -1 清空
error: "* 必填", //错误语句
testValue: "" //待测值
}
var options = $.extend(defaults, options);
var $obj = this;
var rtn = 0;
switch (options.type) {
case -2:
if (typeof $obj.attr("vtype") != 'undefined') {
var vtype = $obj.attr("vtype");
if (options.testValue.length > 0) {
//alert(vtype);
var vflag = false;
switch (vtype) {
case "int": vflag = isInteger(options.testValue, $obj);
break;
case "email": vflag = isEmail(options.testValue, $obj);
break;
case "str": vflag = isString(options.testValue, $obj);
break;
case "tel": vflag = isTelephone(options.testValue, $obj);
break;
case "mob": vflag = isMobile(options.testValue, $obj);
break;
case "url": vflag = isUri(options.testValue, $obj);
break;
case "post": vflag = isPost(options.testValue, $obj);
break;
}
if (!vflag) { rtn = 1; }
}
}
break;
case -1:
$obj.css("color", "black");
$obj.html("");
break;
case 0:
$obj.css("color", "black");
$obj.html("√");
if (typeof $obj.attr("vtype") != 'undefined') {
var vtype = $obj.attr("vtype");
var vflag = false;
switch (vtype) {
case "int": vflag = isInteger(options.testValue, $obj);
break;
case "email": vflag = isEmail(options.testValue, $obj);
break;
case "str": vflag = isString(options.testValue, $obj);
break;
case "tel": vflag = isTelephone(options.testValue, $obj);
break;
case "mob": vflag = isMobile(options.testValue, $obj);
break;
case "url": vflag = isUri(options.testValue, $obj);
break;
case "post": vflag = isPost(options.testValue, $obj);
break;
}
if (!vflag) { rtn = 1; }
}
break;
case 1:
$obj.css("color", "red");
if ($obj.data("error") == null || $obj.data("error") == "") {
$obj.html(options.error);
} else {
$obj.html($obj.data("error"));
}
rtn = 1;
break;
}
return rtn;
}
})(jQuery);
function isInteger(obj, errobj) {
reg = /^[-+]?\d+$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("Please input correct figures");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
function isEmail(obj, errobj) {
reg = /^\w{3,}@\w+(\.\w+)+$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("请输入正确的邮箱地址");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
function isString(obj, errobj) {
reg = /^[a-z,A-Z]+$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("只能输入字符");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
function isTelephone(obj, errobj) {
reg = /^(\d{3,4}\-)?[1-9]\d{6,7}$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("例:021-1000001");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
function isMobile(obj, errobj) {
reg = /^(\+\d{2,3}\-)?\d{11}$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("请输入正确移动电话");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
function isUri(obj, errobj) {
reg = /^http:\/\/[a-zA-Z0-9]+\.[a-zA-Z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("请输入正确的inernet地址");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
function isPost(obj, errobj) {
reg = /^[1-9]\d{5}$/;
var flag = false;
if (!reg.test(obj)) {
errobj.css("color", "red");
errobj.html("请输入正确的邮编");
} else {
errobj.css("color", "black");
errobj.html("√");
flag = true;
}
return flag;
}
$(function() {
var vtypespan = $("span[vtype]");
vtypespan.each(function() {
if (typeof $(this).attr("vtype") != 'undefined') {
var vtype = $(this).attr("vtype");
var vobj = $(this);
var input = $(this).prev();
switch (vtype) {
case "int":
input.keyup(function() {
return isInteger(input.val(), vobj);
});
break;
case "email":
input.keyup(function() {
return isEmail(input.val(), vobj);
});
break;
case "str":
input.keyup(function() {
return isString(input.val(), vobj);
});
break;
case "tel":
input.keyup(function() {
return isTelephone(input.val(), vobj);
});
break;
case "mob":
input.keyup(function() {
return isMobile(input.val(), vobj);
});
break;
case "url":
input.keyup(function() {
return isUri(input.val(), vobj);
});
break;
case "post":
input.keyup(function() {
return isPost(input.val(), vobj);
});
break;
}
}
});
})
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<link rel="stylesheet" type="text/css" href="../css/index.css" />
<script src="../js/jquery-1.4.2.js" type="text/javascript"></script>
<script src="../js/jQuery.groupBsave.js" type="text/javascript"></script>
<script type="text/javascript">
function funcSave() {
$("#dSortid").data("error", "请填写排序ID");
$("#dClassName").data("error", "请填写类别名称");
var sign = $(".a09").groupBsave();
if (sign > 0) {
return false;
}
}
$(function() {
$("#BtnAdd").click(function() {
return funcSave();
})
});
</script>
</head>
<body class="bodybg01">
<form name="form1" method="post" id="form1">
<input type="hidden" name="ClasSN" id="ClasSN" />
<div id="content">
<table width="100%" class="a01">
<tr>
<td width="8%" style="text-align: right;">
当前位置:
</td>
<td width="3%">
首页
</td>
<td width="1%">
>
</td>
<td width="5%">
<a href="#">客户备案</a>
</td>
<td width="1%">
>
</td>
<td>
客户分类管理
</td>
</tr>
</table>
<table width="100%" class="a02">
<tr>
<td width="5%" style="text-align: right;">
<img src="../images/tubiao.jpg" alt=" " />
</td>
<td width="1%">
</td>
<td width="94%">
<strong id="StrongTitle">客户分类管理新增</strong>
</td>
</tr>
</table>
<div class="shdlr">
<table width="100%" class="a03">
<tr>
<td width="10%" style="text-align: right;">
排序ID:
</td>
<td width="23%">
<input name="Sortid" type="text" id="Sortid" class="a09" />
<span id="dSortid" ></span>
</td>
<td style="text-align: right;">
</td>
</tr>
<tr>
<td style="text-align: right;">
类别名称:
</td>
<td>
<input name="ClassName" type="text" id="ClassName" class="a09" />
<span id="dClassName" ></span>
</td>
<td style="text-align: right;" >
</td>
</tr>
</table>
<table width="100%" style="margin-bottom: 20px;">
<tr>
<td width="10%">
</td>
<td width="10%">
<a id="BtnAdd" href="javascript:void(0);"><img src="../images/querentijiao.jpg" /></a>
</td>
<td width="10%">
<a href="javascript:history.go(-1);" >
<img src="../images/quxiaofanhui.jpg" alt=" " /></a>
</td>
<td width="70%">
</td>
</tr>
</table>
</div>
</div>
</form>
</body>
</html>