jQuery("#saveBtn").click(function() {
reMoveAttrs();
jQuery("#table_task :text").rules("remove");
jQuery("#table_productNo_2 :text").rules("remove");
if (jQuery("#mobile").val().trim() == "" && jQuery("#landLine").val().trim() == "") {
alert("为联系方便,手机和座机请输入一项。")
return;
}
//进厂里程为空,提示信息
if (jQuery.trim(jQuery("#input_startMileage").val()) == '' && startMileageTimes == 0) {
startMileageTimes++;
if (confirm("里程数为空,为了更好的服务,建议填写!")) {
jQuery("#input_startMileage").focus();
return;
}
}
jQuery("#brandId").val(mybrandid);
jQuery("#modelId").val(mymodelid);
jQuery("#yearId").val(myyearid);
jQuery("#engineId").val(myengineid);
var flag = 1;//标识表单是否可以提交 1可以,0不可以
var reg1 = /^([0]|([1-9]+[0-9]*.{1}[0-9]+)|([0].{1}[1-9]+[0-9]*)|([1-9][0-9]*)|([0][.][0-9]+[1-9]*))$/;//正数
var reg2 = /^[0-9]*[1-9][0-9]*$/;//正整数
if (!isEmptyService()) {
jQuery(".serviceTotal").each(function() {
//验证输入的是正数
if (jQuery(this).val().trim() != "" && !reg1.test(jQuery(this).val().trim())) {
flag = 0;
alert("工时费请输入正确的价格!");
return;
}
});
}
//加入手机和电话的判断
if (jQuery("#mobile").val().trim() != "") {
var reg = /^((1\d{10})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)$/;
if (!(reg.test(jQuery("#mobile").val()))) {
if (alert("请输入正确的手机号码或者电话")) {
jQuery("#mobile").val('');
jQuery("#mobile").focus();
return;
}
}
}
//验证单价不为空,验证数量不为空
if (!isEmptyItem()) {
jQuery(".itemPrice").each(function() {
if (jQuery(this).val() != '') {
jQuery(this).rules("add", {
number:true,
min:0.001,
messages: {
number: "第" + (jQuery(this).index(".itemPrice") + 1) + "行商品单价输入数字",
min:"第" + (jQuery(this).index(".itemPrice") + 1) + "行商品销售价为0,请补充价格或备注赠送"
}
});
return false;
}
if (!reg1.test(jQuery(this).val().trim())) {
flag = 0;
alert("请输入正确的销售价!");
return;
}
});
}
//验证商品品名不能为空
if (!isEmptyItem()) {
jQuery("input[name$='.productName']").each(function() {
if (jQuery.trim(jQuery(this).val()) == '') {
jQuery(this).rules("add", {
required: true,
messages: {
required: "第" + (jQuery(this).index("input[name$='.productName']") + 1) + "行材料无品名,无法处理,请补充完整"
}
});
return false;
}
});
}
//验证施工单内容,如果工时费或者备注有填写,就内容必填 #table_task input[name$='.service'],#table_task input[name$='.total'],#table_task input[name$='.memo']
if (!isEmptyService()) {
jQuery("#table_task input[name$='.service']").each(function() {
if (jQuery.trim(jQuery(this).val()) == '' && (jQuery("#table_task input[name$='.total']").eq(jQuery(this).index("#table_task input[name$='.service']")).val() > 0 || jQuery("#table_task input[name$='.memo']").eq(jQuery(this).index("#table_task input[name$='.service']")).val() != '')) {
jQuery(this).rules("add", {
required: true,
messages: {
required: "第" + (jQuery(this).index("#table_task input[name$='.service']") + 1) + "行请输入施工内容"
}
});
return false;
}
});
}
if (!isEmptyService()) {
jQuery("#table_task input[name$='.service']").each(function() {
if (jQuery.trim(jQuery(this).val()).length > 20) {
jQuery(this).rules("add", {
maxlength: 20,
messages: {
maxlength:"第" + (jQuery(this).index("#table_task input[name$='.service']") + 1) + "行请输入施工内容长度超过20字符"
}
});
return false;
}
});
}
//验证采购量大于0
if (!isEmptyItem()) {
jQuery(".itemAmount").each(function() {
if (jQuery(this).val() <= 0) {
jQuery(this).rules("add", {
required: true,
min: 1,
number:true,
messages: {
required: "第" + (jQuery(this).index(".itemAmount") + 1) + "行商品数量为0,此行内容无意义,请补充或删除",
min:"第" + (jQuery(this).index(".itemAmount") + 1) + "行商品数量为0,此行内容无意义,请补充或删除",
number:"第" + (jQuery(this).index(".itemAmount") + 1) + "行商品数量请输入数字"
}
});
return false;
}
if (!reg1.test(jQuery(this).val().trim())) {
flag = 0;
alert("请输入正确的数量!");
return;
}
});
}
//如果商品只有一行时判断是否是新产品,是的话要确认新增
if (jQuery("input[name$='.productName']").size() == 1) {
var idPrefix = jQuery(jQuery("input[name$='.productName']").get(0)).attr("id").split(".")[0];
var vehicleBrand;
var vehicleModel;
var vehicleYear;
var vehicleEngine;
if (document.getElementById("brand") != null) {
vehicleBrand = document.getElementById("brand").value;
}
if (document.getElementById("model") != null) {
vehicleModel = document.getElementById("model").value;
}
if (document.getElementById("year") != null) {
vehicleYear = document.getElementById("year").value;
}
if (document.getElementById("engine") != null) {
vehicleEngine = document.getElementById("engine").value;
}
var productBrand = document.getElementById(idPrefix + ".brand").value;
var productSpec = document.getElementById(idPrefix + ".spec").value;
var productModel = document.getElementById(idPrefix + ".model").value;
jQuery("#div_brand").css({'display':'none'});
if ((vehicleBrand == null || vehicleBrand == "") && (vehicleModel == null || vehicleModel == "") &&
(vehicleYear == null || vehicleYear == "") && (vehicleEngine == null || vehicleEngine == "")) {
alert("请输入车型!");
return false;
}
var productName = document.getElementById(idPrefix + ".productName").value;
if (productName == "") {
alert("请输入品名!");
return false;
}
jQuery.ajax({
type:"POST",
url:"searchInventoryIndex.do?method=searchInventorySearchIndexCountForVehicle",
async:true,
data:{
productName:productName,
productBrand:productBrand,
productSpec:productSpec,
productModel: productModel,
vehicleBrand:vehicleBrand,
vehicleModel:vehicleModel,
vehicleYear:vehicleYear,
vehicleEngine:vehicleEngine
},
cache:false,
dataType:"json",
success:function(data) {
if (data.count <= 0) {
if (!confirm("库存无此商品,是否新增?")) {
document.getElementById(idPrefix + ".productName").value = '';
document.getElementById(idPrefix + ".brand").value = '';
document.getElementById(idPrefix + ".spec").value = '';
document.getElementById(idPrefix + ".model").value = '';
document.getElementById(idPrefix + ".price").value = '';
document.getElementById(idPrefix + ".amount").value = '0';
document.getElementById(idPrefix + ".total").value = '';
document.getElementById(idPrefix + ".inventoryAmount").value = '0';
document.getElementById(idPrefix + ".memo").value = '';
} else {
jQuery("#repairOrderForm").attr('action', 'txn.do?method=saveRepairOrder&btnType=save');
if (flag == 1) //表单标识可以提交时提交
{
btnType = "save";
jQuery("#repairOrderForm").submit();
}
}
}
}
}
);
} else {
//一行以上商品可直接提交
jQuery("#repairOrderForm").attr('action', 'txn.do?method=saveRepairOrder&btnType=save');
if (flag == 1) //表单标识可以提交时提交
{
btnType = "save";
jQuery("#repairOrderForm").submit();
}
}
});
分享到:
相关推荐
此文档中包含一些常用的js校验,例如:非空校验了啊,特殊符号的限制了啊,限制文本框输入格式啊等等
在`common.base.js`这样的文件中,通常会包含一些常见的公共方法,比如通用的DOM操作、数据处理、网络请求封装等。这些方法可以被项目中的其他代码复用,减少代码重复,提高代码质量。例如,可能有一个`addClass`...
另外,一些库如`TextFx`和`Typed.js`专门用于创建吸引人的文字动画,它们可以模拟打字机效果或实现其他复杂的文本动画。 三、常用JavaScript方法 1. **数组操作**:`push()`、`pop()`、`shift()`、`unshift()`用于...
这个名为"commonJS:一些常用js代码段"的压缩包文件,显然包含了开发者在实际工作中可能会用到的各种JavaScript代码片段,涵盖了多个方面,包括代码规范、CSS规范、文件上传与下载功能、视觉特效以及一些实用算法。...
csdutils是一个提供一些常用javascript方法的库。 1.安装 使用npm或bower安装。 npm安装csdutils --save-dev Bower安装csdutils --save 然后导入。 var csdutils = require ( 'csdutils' ) ; //or import ...
在web编程中大家应该会经常用到一些常用js操作,例如 alert(),通常是遇到了再写,受公司的启发,我自己简单写了个类来自动生成这些js,目的就是为了方便,一个小玩意,新手们也许会喜欢^_^ [php] <...
ext 的一些常用方法 ext 的一些常用方法 ext 的一些常用方法
C#中一些常用的Js调用大全:/// /// 弹出JavaScript小窗口 /// /// <param name="js">窗口信息 public static void Alert(string message) { #region string js = @"<Script language='JavaScript'> alert...
一些常用的JavaScript代码,全是我工作中的总结
本文档包含一些常用的javascript的例子, 简单易用。 有参考价值
一些常用的JavaScript录入有效性验证
原生javascript自己封装的一些常用小方法
#### 描述:“常用JS代码提供下载常用JS代码提供下载……” - **含义**: 这段描述强调了文档的主要内容是提供常用JS代码的下载。 - **作用**: 对于前端开发者而言,这些代码可以作为开发过程中的工具包,帮助快速...
本文将深入探讨一些程序员常用的JavaScript特效及其背后的原理。 首先,我们来谈谈JavaScript基础。JavaScript是一种解释型、弱类型、基于原型的对象导向语言,它主要在浏览器环境中运行,用于处理用户交互、操作...
这个压缩包“60个常用js”显然是一个包含多个JavaScript实用代码片段或者函数库的集合,旨在帮助开发者在日常工作中提高效率。 以下是一些可能包含在这个压缩包中的JavaScript知识点: 1. **变量声明与数据类型**...
包含的文件有:JQuery zTree v3.5.14、lhgDialog-4.2.0、jquery.autocomplete.zip、jquery-easyui-1.3.zip、kindeditor-4.1.9.zip、uploadify实例(java代码).zip
这个压缩包文件中的"一些常用的Javascript特效"显然包含了多种利用JavaScript实现的视觉效果和交互功能,这些效果可以极大地提升网站的吸引力和用户体验。让我们深入探讨一下JavaScript特效在网页设计中的重要性和...
在这个"泛微oa流程L流程表单常用js大全"中,我们可以深入探讨一些在构建和定制流程表单时常见的JavaScript(js)操作。 1. **主表与明细表**: 在泛微OA中,主表通常用来存储主要的业务数据,而明细表则用于存放与...
JavaScript,也被称为JS,是一种广泛应用于网页和网络应用的脚本语言,主要负责客户端的交互逻辑。以下是一些常见的JavaScript技巧和用法: 1. `oncontextmenu` 事件:这个事件可以用来处理鼠标右键点击事件。例如...