jqGrid增加时--判断开始日期与结束日期(实例解析)


Posted in Javascript onNovember 08, 2013
$("#btnAddSaveTestSubject").click(function () {
        //增加时的验证,保存
        jQuery.validator.addMethod("admissionBatch", function (value, element) {
            return this.optional(element) || value != 0;
        }, "请选择招生批次");
        jQuery.validator.addMethod("educationLevel", function (value, element) {
            return this.optional(element) || value != 0;
        }, "请选择学历层次");
        jQuery.validator.addMethod("professionalProperty", function (value, element) {
            return this.optional(element) || value != 0;
        }, "请选择专业性质");
        $("#AddEntranceTestSubjectFrom").validate({
            event: "blur",
            debug: true,
            ignore: ":hidden",
            errorElement: "div",
            wrapper: "div",
            errorPlacement: function (error, element) {
                error.addClass('message');
                error.appendTo(element.parent());
            },
            rules: {
                "etsadd_admissionBatch": {
                    required: true,
                    admissionBatch: true
                },
                "etsadd_educationLevel": {
                    required: true,
                    educationLevel: true
                },
                "etsadd_professionalProperty": {
                    required: true,
                    professionalProperty: true
                }
            },
            messages: {
                "etsadd_admissionBatch": {
                    required: "请选择招生批次",
                    admissionBatch: "请选择招生批次"
                },
                "etsadd_educationLevel": {
                    required: "请选择学历类型",
                    educationLevel: "请选择学历类型"
                },
                "etsadd_professionalProperty": {
                    required: "请选择专业性质",
                    professionalProperty: "请选择专业性质"
                }
            },
            submitHandler: function (form) {
                var idArray = jQuery("#testSubjectGrid").jqGrid('getGridParam', 'selarrrow'); //获取测试科目选中的行  
                if (idArray == null || idArray == "") {
                    jAlert("请选择测试科目!", "提示信息");
                    return;
                }
                for (var i = 0; i < idArray.length; i++) {
                    if ($("#exam_begintime_" + idArray[i]).val() == "") {
                        jAlert("测试科目" + jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content") + "的开始时间不能为空!", "提示信息");
                        return;
                    }
                    if ($("#exam_endtime_" + idArray[i]).val() == "") {
                        jAlert("测试科目" + jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content") + "的结束时间不能为空!", "提示信息");
                        return;
                    }
                    var reg_ymd = /^([/d]{4})-([/d]{1,2})-([/d]{1,2})$/; //校验日期的正则 
                    begindata = $("#exam_begintime_" + idArray[i]).val();
                    enddata = $("#exam_endtime_" + idArray[i]).val();
                    var arr_dt1, arr_dt2;
                    arr_dt1 = begindata.match(reg_ymd);
                    arr_dt2 = enddata.match(reg_ymd);
                    begindata = new Date(arr_dt1[1] + "/" + arr_dt1[2] + "/" + arr_dt1[3]);
                    enddata = new Date(arr_dt2[1] + "/" + arr_dt2[2] + "/" + arr_dt2[3]);
                    if (begindata > enddata) {
                        jAlert("测试科目" + jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content") + "开始时间不能大于结束日期!", "提示信息");
                        return;
                    }
                    if ($("#exam_turn_" + idArray[i]).val() == "") {
                        jAlert("测试科目" + jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content") + "的考试场次不能为空!", "提示信息");
                        return;
                    }
                    if ($("#exam_turn_" + idArray[i]).val() != "") {
                        var re = /^[-/+]?/d+(/./d+)?$/;
                        var nubmer = $("#exam_turn_" + idArray[i]).val();
                        if (!re.test(nubmer)) {
                            jAlert("测试科目" + jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content") + "的考试场次必须为数字!", "提示信息");
                            return false;
                        }
                        if ($("#exam_turn_" + idArray[i]).val().length > 8) {
                            jAlert("测试科目" + jQuery("#testSubjectGrid").jqGrid("getCell", idArray[i], "display_content") + "的考试场次不能大于8位数字!", "提示信息");
                            return;
                        }
                    }
                }
                if ($("#AddEntranceTestSubjectFrom").validate().form())
                    $("#AddEntranceTestSubjectFrom").ajaxSubmit({
                        url: "/EntryTestsubjectsSet/AddTestSubject/",
                        dataType: 'json',
                        clearForm: false,
                        data: {
                            strJson: JSON.stringify({
                                test_course_id: idArray.join("&")
                            })
                        },
                        success: function (data) {
                            var json = eval("(" + data + ")");
                            jAlert(json.msg, "提示信息");
                            if (json.suc == 1) {
                                $("#entranceTestSubjcetMask").hide();
                                $("#entranceAddTestSubjectSet").hide();
                                $("#entranceTestSubjectGrid").trigger("reloadGrid");
                                reloadNum++;
                            }
                        }
                    });
            }
        });
    });
Javascript 相关文章推荐
JavaScript的面向对象方法以及差别
Mar 31 Javascript
日期 时间js控件
May 07 Javascript
当jQuery遭遇CoffeeScript的时候 使用分享
Sep 17 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
Jan 24 Javascript
jQuery给动态添加的元素绑定事件的方法
Mar 09 Javascript
jquery实现可旋转可拖拽的文字效果代码
Jan 27 Javascript
常用JS图片滚动(无缝、平滑、上下左右滚动)代码大全(推荐)
Dec 20 Javascript
根据Bootstrap Paginator改写的js分页插件
Dec 25 Javascript
Javascript 使用ajax与C#获取文件大小实例详解
Jan 13 Javascript
详解Html a标签中href和onclick用法、区别、优先级别
Jan 16 Javascript
Vue.js学习之计算属性
Jan 22 Javascript
vuex2中使用mapGetters/mapActions报错的解决方法
Oct 20 Javascript
JavaScript中this的使用详解
Nov 08 #Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
Nov 08 #Javascript
JQuery验证jsp页面属性是否为空(实例代码)
Nov 08 #Javascript
原生js做的手风琴效果的导航菜单
Nov 08 #Javascript
jquery 日期控件datepicker属性详细解析
Nov 08 #Javascript
jquery增加时编辑jqGrid(实例代码)
Nov 08 #Javascript
jqueyr判断checkbox组的选中(示例代码)
Nov 08 #Javascript
You might like
php面向对象中static静态属性与方法的内存位置分析
2015/02/08 PHP
PHP SOCKET编程详解
2015/05/22 PHP
浅谈mysql_query()函数的返回值问题
2016/09/05 PHP
PHP实现json_decode不转义中文的方法
2017/05/20 PHP
在JavaScript并非所有的一切都是对象
2013/04/11 Javascript
javascript中文本框中输入法切换的问题
2013/12/10 Javascript
js实现回放拖拽轨迹从过程上进行分析
2014/06/26 Javascript
轻松实现javascript数据双向绑定
2015/11/11 Javascript
js实现图片无缝滚动
2015/12/23 Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
2016/05/28 Javascript
jQuery 实现倒计时天,时,分,秒功能
2018/07/31 jQuery
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
vue防止花括号{{}}闪烁v-text和v-html、v-cloak用法示例
2019/03/13 Javascript
从零使用TypeScript开发项目打包发布到npm
2020/02/14 Javascript
详细分析Node.js 多进程
2020/06/22 Javascript
使用python开发vim插件及心得分享
2014/11/04 Python
python 调用HBase的简单实例
2016/12/18 Python
修改默认的pip版本为对应python2.7的方法
2018/11/06 Python
python异步存储数据详解
2019/03/19 Python
Python中list的交、并、差集获取方法示例
2019/08/01 Python
python轮询机制控制led实例
2020/05/03 Python
python实现猜单词游戏
2020/05/22 Python
Keras 使用 Lambda层详解
2020/06/10 Python
Python中flatten( ),matrix.A用法说明
2020/07/05 Python
python实现mask矩阵示例(根据列表所给元素)
2020/07/30 Python
美国隐形眼镜网:Major Lens
2018/02/09 全球购物
普师专业个人自荐信范文
2013/11/26 职场文书
大学生工作推荐信范文
2013/12/02 职场文书
医院总经理职责
2013/12/26 职场文书
高中学生评语大全
2014/04/25 职场文书
员工培训协议书
2014/09/15 职场文书
2014年社区个人工作总结
2014/12/02 职场文书
大连星海广场导游词
2015/02/10 职场文书
最美乡村教师观后感
2015/06/11 职场文书
辩论赛新闻稿
2015/07/17 职场文书
丧事答谢词大全
2015/09/30 职场文书