博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery之onchange事件
阅读量:5226 次
发布时间:2019-06-14

本文共 13924 字,大约阅读时间需要 46 分钟。

 
$(function(){  $("#opreateHtml").window("close");     $("#deliveryGrid").datagrid({    url:appPath+"/page/signActivityAct/getPage",    height:"full",    striped:true,    remoteSort:false,    pagination:true,    rownumbers:true,    singleSelect:false,    queryParams:getQueryParam(),    frozenColumns:[[{field:"ck",checkbox:true},      {field:"opt",title:"操作",width:100,align:"center",        formatter:function(value,rowData,rowIndex){            var dataStr = JSON.stringify(rowData);            var html = "";            if(rowData.isdisable=='N'&& rowData.isdisable!='Y'){//                html += "  ";                html += "  ";            }else if(rowData.isdisable!='N'){              html+="  ";//              html+="  ";              html+="  ";                            }                    html += "  ";            return html;        }      }    ]],    columns:[[               {field:'startTime',title:'开始时间',width:100,align:'left',sortable:true},               {field:'endTime',title:'结束时间',width:100,align:'left',sortable:true},               {field:'rewardDays',title:'奖励期',width:100,align:'center',sortable:true},               {field:'rewardName',title:'奖励产品',width:100,align:'center',sortable:true},                {field : 'isdisable',                title : '启用情况',                width : 120,                align : 'center',                sortable : true,                formatter : function(value, rowData, rowIndex) {                    var strReturn = "";                    if (rowData.isdisable == 'Y') {                          return (" "+strReturn +"停用");                     } else if (rowData.isdisable == 'N') {                         return (" "+strReturn +"启用");                     }else {                        return (" "+strReturn +"新增");                     }                                                             }            },                                             {field:'editTime',title:'操作时间',width:120,align:'left',sortable:true}   ]],   toolbar:[      {          id:'btnadd',          text:'新增签到活动',          iconCls:'icon-add',          handler:function(){                 showWin(null,null);          }          }        ] });  $("#addstartTime").datetimebox({      onChange: function (n,o) {        var bgAddTime = $('#addstartTime').datebox("getValue");        var edAddTime = $('#addendTime').datebox("getValue");        if(bgAddTime!=''&& bgAddTime!=null  && edAddTime!=''&&  edAddTime!=null){            if(bgAddTime>edAddTime){                $.messager.alert('提示', "开始时间不能大于结束时间", 'info');                return;            }        }                // 获取两个日期天数差        var bgDates = new Date(bgAddTime);        var edDates = new Date(edAddTime);        var dayss = edDates.getTime() - bgDates.getTime();        var rewardDayss= (parseInt(dayss / (1000 * 60 * 60 * 24)))+1;        $("#addrewardDays").val(rewardDayss);      }  });      //ji suan jie shu shi jian  $("#addendTime").datetimebox({      onChange: function (n,o) {        var bgAddTime = $('#addstartTime').datebox("getValue");        var edAddTime = $('#addendTime').datebox("getValue");        if(bgAddTime!=''&& bgAddTime!=null  && edAddTime!=''&&  edAddTime!=null){        if(bgAddTime>edAddTime){            $.messager.alert('提示', "开始时间不能大于结束时间", 'info');            return;          }        }        // 获取两个日期天数差        var bgDates = new Date(bgAddTime);        var edDates = new Date(edAddTime);        var dayss = edDates.getTime() - bgDates.getTime();        var rewardDayss= (parseInt(dayss / (1000 * 60 * 60 * 24)))+1;        $("#addrewardDays").val(rewardDayss);      }  });});function getQueryParam(){  var signActivity =new Object();  //封装查询条件  signActivity.startTime = $("#startTime").datebox("getValue");  signActivity.endTime = $("#endTime").datebox("getValue");  signActivity.isdisable = $('#isdisable').combobox("getValue");  return signActivity;}function doQuery(){  $("#deliveryGrid").datagrid('load',getQueryParam());}function showWin(rowData,num){    if(rowData!=null){         $("#idHidden").val("");          $("#addrewardDays").val("");          $("#addplatform").val("");          $("#addactivityIntroduction").val("");//          $("#addrewardType").combobox("setValue", 'JF');//奖励类型  目前仅支持积分          $("#addsignActivityId").val("");          $("#addrewardName").val("");          $("#addrewardContent").val("");          $("#addstartTime").datebox("setValue","");          $("#addendTime").datebox("setValue","");          $("#isdisable").combobox("setValue", '');          //签到规则说明          var result=querySignRule();          $("#addruleIntroduction").val(result);          var iconStr = "icon-add";            var title = "新增签到活动";            var urlList;            var id =rowData.signActivityId;            if (id != null) {                iconStr = "icon-edit";                title = "编辑签到活动";             $.post(                appPath+"/page/signActivityAct/getBean/"+id,                 {},                 function(data){                   $("#idHidden").val(data.signActivityId);                   $("#addrewardDays").val(data.rewardDays);                   $("#addplatform").combobox('setValue', data.platform);                   $("#addactivityIntroduction").val(data.activityIntroduction);                   $("#addrewardType").val(data.rewardType);                                  $("#addsignActivityId").val(data.signActivityId);                   $("#addendTime").datebox("setValue", data.endTime);                    $("#addstartTime").datebox("setValue", data.startTime);                   $("#addrewardName").val(data.rewardName);                   $("#addrewardContent").val(data.rewardContent);                   $("#addisdisable").combobox('setValue', data.isdisable);                },"json");          }    }else{          var iconStr = "icon-add";            var title = "新增签到活动";          $("#idHidden").val("");                   $("#addrewardDays").val("");                    $("#addplatform").combobox("setValue", 'APP');          $("#addactivityIntroduction").val("");          $("#addrewardType").combobox("setValue", 'JF');//奖励类型  目前仅支持积分          $("#addsignActivityId").val("");          $("#addrewardName").val("签到额外奖励");          $("#addrewardContent").val("");                              $("#addstartTime").datebox("setValue","");          $("#addendTime").datebox("setValue","");                    $("#isdisable").combobox("setValue", '');          //签到规则说明         var result= querySignRule();          $("#addruleIntroduction").val(result);    }   $('#opreateHtml').window({    title:title,    iconCls:iconStr,    width : 750,    height : 480,    left : 200,    modal : true,    shadow : true,    collapsible : false,    minimizable : false,    maximizable : false  });  $('#opreateHtml').window('move',{top:0});  $('#opreateHtml').window('open');    if(num==1){        $("#shenheHideAndShow").hide();    }else{        $("#shenheHideAndShow").show();    }}function closeWin(id){  $('#opreateHtml').window('close');}function save(){  var signActivity=new Object();  if ($("#idHidden").val() != null && $("#idHidden").val() != "") {      signActivity.signActivityId = $("#idHidden").val();    }    var bgAddTime = $('#addstartTime').datebox("getValue");    var edAddTime = $('#addendTime').datebox("getValue");    // 获取两个日期天数差    var bgDate = new Date(bgAddTime);    var edDate = new Date(edAddTime);    var days = edDate.getTime() - bgDate.getTime();    var rewardDays= (parseInt(days / (1000 * 60 * 60 * 24)))      if($("#addstartTime").datebox("getValue")==""||$("#addstartTime").datebox("getValue")==null){      $.messager.alert("提示","开始时间不能为空","info");      return;  }  if ($("#addendTime").datebox("getValue") == null|| $("#addendTime").datebox("getValue") == "") {        $.messager.alert('提示', "结束时间不能为空", 'info');        return;    }    if ($("#addstartTime").datebox("getValue") >= $("#addendTime").datebox("getValue")) {        $.messager.alert('提示', "开始时间不能大于结束时间", 'info');        return;    }        if($("#addactivityIntroduction").val()==null || $("#addactivityIntroduction").val()==""){        $.messager.alert('提示', "请输入活动的内容介绍", 'info');        return;    }    if($("#addrewardName").val()==null ||$("#addrewardName").val()==""){        $.messager.alert('提示', "请输入奖励积分名称", 'info');        return;    }    if($("#addrewardContent").val()==null ||$("#addrewardContent").val()==""){        $.messager.alert('提示', "请输入奖励积分分值", 'info');        return;    }          signActivity.signActivityId = $("#idHidden").val();  signActivity.startTime = $("#addstartTime").datebox("getValue");  signActivity.endTime = $("#addendTime").datebox("getValue");    signActivity.platform=$("#addplatform").combobox("getValue");    signActivity.activityIntroduction=$("#addactivityIntroduction").val();    signActivity.rewardType=$("#addrewardType").combobox("getValue");  //默认是开始减去结束时间  signActivity.rewardDays=rewardDays+1;    signActivity.rewardName=$("#addrewardName").val();    signActivity.rewardContent=$("#addrewardContent").val();    //默认签到规则    doAjax({    url:appPath+'/page/signActivityAct/saveOrUpdate',    type:'post',    data:signActivity,    success : function(data) {        if (data == "ok") {            $.messager.alert('提示', "保存成功", 'info');            $('#opreateHtml').window('close');            doQuery();        } else {            $.messager.alert('提示', data, 'info');        }    }  });}function deletes(id) {    var ids = '';if (id == null || id == '') {    var selections = $("#deliveryGrid").datagrid('getSelections');    if (selections == null || selections == '') {        $.messager.alert('提示信息', '请选操作的记录', '');        return;    }    for (var i = 0; i < selections.length; i++) {        ids += selections[i].signActivityId + ',';    }} else {    ids = id;}$.messager.confirm('提示信息', "您确定要停用吗?", function(r) {    if (r) {        $.post(appPath + "/page/signActivityAct/deleteIdsLogic", {            "ids" : ids        }, function(data) {            $.messager.alert('提示信息', '停用成功', '');            doQuery();        });    }});}//启用function isOpen(id){        var isdisable='Y';    if(!checkIsisable(isdisable)){        $.messager.alert('提示','数据中已经存在启用状态的活动,不可再启用!');        return;    }            /**     * 数据在启用的之前,应先查找数据库是否有已经启用的数据,     * 保证后台数据只有一条是启用状态,否则弹框,并提示用户     */    var ids = '';    if (id == null || id == '') {        var selections = $("#deliveryGrid").datagrid('getSelections');        if (selections == null || selections == '') {            $.messager.alert('提示信息', '请选操作的记录', '');            return;        }        for (var i = 0; i < selections.length; i++) {            ids += selections[i].signActivityId + ',';        }    } else {        ids = id;    }    $.messager.confirm('提示信息', "您确定要启用吗?", function(r) {        if (r) {            $.post(appPath + "/page/signActivityAct/isOpen", {                "ids" : ids            }, function(data) {                $.messager.alert('提示信息', '启用成功', '');                doQuery();            });        }    });}   //检查活动编码是否唯一function checkIsisable(isdisable){    var flag = false;    doAjax({        url:appPath+'/page/signActivityAct/checkIsdisable',        type:'post',        async:false,        data:{            isdisable:isdisable        },        success:function(data){            if(data == 0){                flag = true;            }        }    });    return flag;}/** * 通过soa-member 接口查询出默认签到规则 */function querySignRule(){    var result='';    doAjax({        url:appPath+'/page/signActivityAct/getDeSignRule',        type:'post',        async:false,        data:{},        success:function(data){         if(data!=null ){             result=data[0].signRule           return result;         }        }    });         return result;}/** * 启用,停用 *  */function doOk(id,val){    var msg = "";    msg =  val ==1?"启用成功":"停用成功";    doAjax({        url: appPath + "/page/signActivityAct/onlineOrOffline",        type: "post",        dataType: "json",        data: {id:id,isdisable:val} ,        success: function (data) {            doQuery();            if(data=='1'){               $.messager.alert('提示','数据中已经存在启用状态的活动,不可再启用!');            }else{            $.messager.alert('提示信息', msg, 'info');            }        },        error: function () {            alert('ajax异常');        }    });}
 
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
开始时间 结束时间 启用状态 查  询
开始时间
结束时间
适用端
内容介绍
奖励类型
奖励期
奖励积分名称
奖励积分分值
签到规则说明
 

总结:

$("#addstartTime").datetimebox({      onChange: function (n,o) {        var bgAddTime = $('#addstartTime').datebox("getValue");        var edAddTime = $('#addendTime').datebox("getValue");        if(bgAddTime!=''&& bgAddTime!=null  && edAddTime!=''&&  edAddTime!=null){            if(bgAddTime>edAddTime){                $.messager.alert('提示', "开始时间不能大于结束时间", 'info');                return;            }        }                // 获取两个日期天数差        var bgDates = new Date(bgAddTime);        var edDates = new Date(edAddTime);        var dayss = edDates.getTime() - bgDates.getTime();        var rewardDayss= (parseInt(dayss / (1000 * 60 * 60 * 24)))+1;        $("#addrewardDays").val(rewardDayss);      }  });

 总结:

日期格式的插件是DatatimeBox,但是该插件没有事件方法,找到其依赖(即父类)databox,

只有一个onselect事件,不满足需要,再找到databox的父类combox,

找到onselect事件,满足需求,即:当文本域的值改变的时候触发。

转载于:https://www.cnblogs.com/wangchuanfu/p/5844666.html

你可能感兴趣的文章
TP框架中的page分页实现
查看>>
[转]跨越千年的RSA算法
查看>>
传奇学者应明生
查看>>
【程序执行原理】
查看>>
第二次项目冲刺(Beta阶段)5.24
查看>>
python的多行注释
查看>>
连接Oracle需要jar包和javadoc文档的下载
查看>>
UVA 10976 - Fractions Again?!
查看>>
poj 1183
查看>>
Dreamweaver cc新版本css单行显示
查看>>
Redis的Sorted Set有序集合命令
查看>>
【android】安卓的权限提示及版本相关
查看>>
3D重建的进阶了解---深度图,网格,体素,点云是什么
查看>>
JavaScript可否多线程? 深入理解JavaScript定时机制
查看>>
IOS基础学习
查看>>
js 模拟滚动条
查看>>
PHP 导出 Excell
查看>>
关于springmvc json交互产生的406错误
查看>>
python之-框架
查看>>
Gradle多项目构建
查看>>