jquery之onchange事件
2016-09-06 10:09
274 查看
$(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){ vardataStr=JSON.stringify(rowData); varhtml=""; if(rowData.isdisable=='N'&&rowData.isdisable!='Y'){ //html+="<imgclass='op-enable'src='"+appPath+"/js/lib/jquery-easyui/themes/icons/cancel.png'onClick='deletes("+rowData.signActivityId+")'title='停用'/> "; html+="<imgclass='op-enable'src='"+appPath+"/js/lib/jquery-easyui/themes/icons/cancel.png'onClick='doOk("+rowData.signActivityId+","+2+")'title='禁用'/> "; }elseif(rowData.isdisable!='N'){ html+="<imgclass='op-enable'src='"+appPath+"/js/lib/jquery-easyui/themes/icons/pencil.png'onClick='showWin("+dataStr+")'title='编辑'/> "; //html+="<imgclass='op-enable'src='"+appPath+"/js/lib/jquery-easyui/themes/icons/get-verify.png'onClick='isOpen("+rowData.signActivityId+")'title='启用'/> "; html+="<imgclass='op-enable'src='"+appPath+"/js/lib/jquery-easyui/themes/icons/get-verify.png'onClick='doOk("+rowData.signActivityId+","+1+")'title='启用'/> "; } html+="<imgclass='op-enable'src='"+appPath+"/js/lib/jquery-easyui/themes/icons/search.png'onClick='showWin("+dataStr+","+1+")'title='查看'/> "; returnhtml; } } ]], 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){ varstrReturn=""; if(rowData.isdisable=='Y'){ return("<fontcolor=red>"+strReturn+"停用</font>"); }elseif(rowData.isdisable=='N'){ return("<fontcolor=green>"+strReturn+"启用</font>"); }else{ return("<fontcolor=black>"+strReturn+"新增</font>"); } } }, {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){ varbgAddTime=$('#addstartTime').datebox("getValue"); varedAddTime=$('#addendTime').datebox("getValue"); if(bgAddTime!=''&&bgAddTime!=null&&edAddTime!=''&&edAddTime!=null){ if(bgAddTime>edAddTime){ $.messager.alert('提示',"开始时间不能大于结束时间",'info'); return; } } //获取两个日期天数差 varbgDates=newDate(bgAddTime); varedDates=newDate(edAddTime); vardayss=edDates.getTime()-bgDates.getTime(); varrewardDayss=(parseInt(dayss/(1000*60*60*24)))+1; $("#addrewardDays").val(rewardDayss); } }); //jisuanjieshushijian $("#addendTime").datetimebox({ onChange:function(n,o){ varbgAddTime=$('#addstartTime').datebox("getValue"); varedAddTime=$('#addendTime').datebox("getValue"); if(bgAddTime!=''&&bgAddTime!=null&&edAddTime!=''&&edAddTime!=null){ if(bgAddTime>edAddTime){ $.messager.alert('提示',"开始时间不能大于结束时间",'info'); return; } } //获取两个日期天数差 varbgDates=newDate(bgAddTime); varedDates=newDate(edAddTime); vardayss=edDates.getTime()-bgDates.getTime(); varrewardDayss=(parseInt(dayss/(1000*60*60*24)))+1; $("#addrewardDays").val(rewardDayss); } }); }); functiongetQueryParam(){ varsignActivity=newObject(); //封装查询条件 signActivity.startTime=$("#startTime").datebox("getValue"); signActivity.endTime=$("#endTime").datebox("getValue"); signActivity.isdisable=$('#isdisable').combobox("getValue"); returnsignActivity; } functiondoQuery(){ $("#deliveryGrid").datagrid('load',getQueryParam()); } functionshowWin(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",''); //签到规则说明 varresult=querySignRule(); $("#addruleIntroduction").val(result); variconStr="icon-add"; vartitle="新增签到活动"; varurlList; varid=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{ variconStr="icon-add"; vartitle="新增签到活动"; $("#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",''); //签到规则说明 varresult=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(); } } functioncloseWin(id){ $('#opreateHtml').window('close'); } functionsave(){ varsignActivity=newObject(); if($("#idHidden").val()!=null&&$("#idHidden").val()!=""){ signActivity.signActivityId=$("#idHidden").val(); } varbgAddTime=$('#addstartTime').datebox("getValue"); varedAddTime=$('#addendTime').datebox("getValue"); //获取两个日期天数差 varbgDate=newDate(bgAddTime); varedDate=newDate(edAddTime); vardays=edDate.getTime()-bgDate.getTime(); varrewardDays=(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'); } } }); } functiondeletes(id){ varids=''; if(id==null||id==''){ varselections=$("#deliveryGrid").datagrid('getSelections'); if(selections==null||selections==''){ $.messager.alert('提示信息','请选操作的记录',''); return; } for(vari=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(); }); } }); } //启用 functionisOpen(id){ varisdisable='Y'; if(!checkIsisable(isdisable)){ $.messager.alert('提示','数据中已经存在启用状态的活动,不可再启用!'); return; } /** *数据在启用的之前,应先查找数据库是否有已经启用的数据, *保证后台数据只有一条是启用状态,否则弹框,并提示用户 */ varids=''; if(id==null||id==''){ varselections=$("#deliveryGrid").datagrid('getSelections'); if(selections==null||selections==''){ $.messager.alert('提示信息','请选操作的记录',''); return; } for(vari=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(); }); } }); } //检查活动编码是否唯一 functioncheckIsisable(isdisable){ varflag=false; doAjax({ url:appPath+'/page/signActivityAct/checkIsdisable', type:'post', async:false, data:{ isdisable:isdisable }, success:function(data){ if(data==0){ flag=true; } } }); returnflag; } /** *通过soa-member接口查询出默认签到规则 */ functionquerySignRule(){ varresult=''; doAjax({ url:appPath+'/page/signActivityAct/getDeSignRule', type:'post', async:false, data:{}, success:function(data){ if(data!=null){ result=data[0].signRule returnresult; } } }); returnresult; } /** *启用,停用 * */ functiondoOk(id,val){ varmsg=""; 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异常'); } }); }
<%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%> <%@taglibprefix="c"uri="http://java.sun.com/jsp/jstl/core"%> <c:setvar="ctx"value="${pageContext.request.contextPath}"/> <jsp:includepage="/jsp/common/header.jsp"></jsp:include> <scriptsrc="${ctx}/js/signActivity/signActivity.js"></script> <tableclass="queryTable"> <tr> <tdclass="queryTitle"width="80px">开始时间</td> <tdclass="queryContent"><inputclass="inputTexteasyui-datetimebox"type="text"id="startTime"/></td> <tdclass="queryTitle"width="80px">结束时间</td> <tdclass="queryContent"><inputclass="inputTexteasyui-datetimebox"type="text"id="endTime"/></td> <tdclass="queryTitle"width="80px">启用状态</td> <tdclass="queryContent"> <selectid="isdisable"class="easyui-combobox"style="width:100px"panelHeight="auto"> <optionvalue="">请选择</option> <optionvalue="Y">禁用</option> <optionvalue="N">启用</option> </select> </td> <tdclass="queryBtnTd"><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-search"onclick="doQuery()">查 询</a></td> </tr> </table> <tableid="deliveryGrid"></table> <divid="opreateHtml"class="easyui-window"title=""iconCls="icon-edit"style="width:320px;height:550px;text-align:center;background:#fafafa;margin:0auto;"> <divclass="easyui-layout"fit="true"> <divregion="center"border="false"style="background:#fff;border:1pxsolid#ccc;"> <form> <inputtype="hidden"id="idHidden"name="idHidden"value=""/> <tableclass="queryTable"width="100%"> <tr> <tdclass="queryTitle"width="100px">开始时间</td> <tdclass="queryContent"><inputclass="inputTexteasyui-datetimebox"type="text"id="addstartTime"style="width:150px"/></td> </tr> <tr> <tdclass="queryTitle"width="100px">结束时间</td> <tdclass="queryContent"><inputclass="inputTexteasyui-datetimebox"type="text"id="addendTime"style="width:150px"/></td> </tr> <tr> <tdclass="queryTitle"width="100px">适用端</td> <tdclass="queryContent"> <selectid="addplatform"class="easyui-combobox"style="width:100px"panelHeight="auto"> <optionvalue="APP">APP</option> <optionvalue="PC">PC</option> <optionvalue="WAP">WAP</option> </select> </td> </tr> <tr> <tdclass="queryTitle"width="100px">内容介绍</td> <tdclass="queryContent"colspan="20"> <textareaid="addactivityIntroduction"name="addactivityIntroduction"class="inputText"validType="maxLength[1000]"style="width:565px;height:70px;"></textarea> </td> </tr> <tr> <tdclass="queryTitle"width="100px">奖励类型</td> <tdclass="queryContent"> <selectid="addrewardType"class="easyui-combobox"style="width:100px"panelHeight="auto"> <optionvalue="JF">积分</option> </select> </tr> <tr> <tdclass="queryTitle"width="100px">奖励期</td> <tdclass="queryContent"><inputclass="inputText"type="text"id="addrewardDays"value=""readonly="readonly"/></td> </tr> <tr> <tdclass="queryTitle"width="100px">奖励积分名称</td> <tdclass="queryContent"><inputclass="inputText"type="text"id="addrewardName"/></td> </tr> <tr> <tdclass="queryTitle"width="100px">奖励积分分值</td> <tdclass="queryContent"><inputclass="inputText"type="text"id="addrewardContent"/></td> </tr> <tr> <tdclass="queryTitle"width="100px">签到规则说明</td> <tdclass="queryContent"colspan="30"> <textareaid="addruleIntroduction"name="addruleIntroduction"class="inputText"validType="maxLength[1000]"readonly="true"style="width:565px;height:70px;"></textarea> </td> </tr> </table> </form> </div> <divregion="south"border="false"style="text-align:center;height:30px;line-height:30px;"> <labelid="shenheHideAndShow"> <aclass="easyui-linkbutton"iconCls="icon-ok"href="javascript:void(0);"onclick="save('1');">确定</a> </label> <aclass="easyui-linkbutton"iconCls="icon-cancel"href="javascript:void(0);"onclick="closeWin();">退出</a> </div> </div> </div>
总结:
$("#addstartTime").datetimebox({
onChange:function(n,o){
varbgAddTime=$('#addstartTime').datebox("getValue");
varedAddTime=$('#addendTime').datebox("getValue");
if(bgAddTime!=''&&bgAddTime!=null&&edAddTime!=''&&edAddTime!=null){
if(bgAddTime>edAddTime){
$.messager.alert('提示',"开始时间不能大于结束时间",'info');
return;
}
}
//获取两个日期天数差
varbgDates=newDate(bgAddTime);
varedDates=newDate(edAddTime);
vardayss=edDates.getTime()-bgDates.getTime();
varrewardDayss=(parseInt(dayss/(1000*60*60*24)))+1;
$("#addrewardDays").val(rewardDayss);
}
});
总结:
日期格式的插件是DatatimeBox,但是该插件没有事件方法,找到其依赖(即父类)databox,
只有一个onselect事件,不满足需要,再找到databox的父类combox,
找到onselect事件,满足需求,即:当文本域的值改变的时候触发。
相关文章推荐
- jquery之onchange事件2
- jquery之onchange事件2
- Jquery中的bind(),on()绑定事件方式总结
- javascript事件委托理解,jQuery .on()方法一步到位实现事件委托
- jquery json select tree for ruby on rails
- JQuery事件绑定,bind与on区别
- jquery bind event, use on. $(document).on("click","#a",function(){alert(1)}) [#document]
- jquery的自定义事件通过on绑定trigger触发
- [jQuery]on和bind事件绑定的区别
- javascript中手动onchange事件触发
- jQuery绑定事件的四种方式:bind、live、delegate、on
- [转]Hide or Remove jquery ui tab based on condition
- jQuery事件之on()方法绑定多个选择器,多个事件
- Jquery学习之用on()取代live()
- jQuery事件绑定.on()简要概述及应用
- jQuery事件绑定方法bind、 live、delegate和on的区别
- jQuery事件绑定.on()简要概述及应用
- jQuery的on绑定事件在mobile safari(iphone / ipad / ipod)上无法使用的解决方案
- HOW TO: remove the 300ms delay when clicking on a link in JQuery Mobile