点击 再添加一期 按钮,就添加整个期数的内容 包括培训时间等。
培训费用 住宿费 餐费 其他,填写完,也是自动算出总和。
var num = 1;
// 自动计算总钱数
$(".classCount").on("input propertychange", "input[name='trainCost'],input[name='hotelCost'],input[name='mealsCost'],input[name='otherCost']",function() {
// alert(222)
var peixun = $(this).parents('.classCountPart').find("input[name='trainCost']").val();
var zhusu = $(this).parents('.classCountPart').find("input[name='hotelCost']").val();
var canfei = $(this).parents('.classCountPart').find("input[name='mealsCost']").val();
var other = $(this).parents('.classCountPart').find("input[name='otherCost']").val();
console.log(peixun,zhusu,canfei,other)
var totalValue = Number(peixun) + Number(zhusu) + Number(canfei) + Number(other)
$(this).parents('.classCountPart').find("input[name='totalCost']").val(totalValue);
});
//添加新一期
$("#addCountClass").on('click',function(){
var othis = $(this), method = othis.data('method');
active[method].call(this, othis);
})
//删除期数
$(".classCount").on('click','#delqishu', function(){
var othis = $(this), method = othis.data('method');
active[method].call(this, othis);
})
var active = {
// 删除一期
delqishu:function(othis){
othis.parent().parent().parent().remove().off("click", ".classCountPart");
num--;
},
// 再添加一期
addCountClass: function(othis){
num++;
var addqishu =
'\t<div class="classCountPart">\n' +
'\t<div class="qishu layui-form-item clearFloat">\n' +
// '\t<div class="layui-inline floatleft">第'+ num +'期</div>\n' +
'\t<input class="layui-inline floatleft layui-input" id="qishuInput" lay-filter="periodName" value="第'+ num +'期">\n' +
'\t<div class="layui-inline floatright">\n' +
'\t<button type="button" class="layui-btn layui-btn-xs layui-btn-normal" style="margin-top:8px;" data-method="delqishu" id="delqishu"><i class="layui-icon layui-icon-subtraction"></i></button>\n' +
'\t</div> \n' +
'\t</div>\n' +
'\t<div class="layui-form-item">\n' +
'\t<div class="layui-inline">\n' +
'\t<label class="layui-form-label"><span class="mustItem">*</span> 培训人数:</label>\n' +
'\t<div class="layui-input-inline" style="width: 256px;">\n' +
'\t<input type="text" name="trainPsnNum" id="trainPsnNum" lay-filter="trainPsnNum" class="layui-input" lay-verify="required">\n' +
'\t</div>\n' +
'\t<div class="layui-form-mid">人</div>\n' +
'\t</div>\n' +
'\t<div class="layui-inline classTime">\n' +
'\t <label class="layui-form-label"> <span class="mustItem">*</span> 培训时间:</label>\n' +
'\t<div class="layui-input-inline trainStarttimeCon" style="width:125px;">\n' +
'\t<input type="text" name="trainStarttime" id="trainStarttime'+num+'" lay-filter="trainStarttime" class="layui-input trainStarttime" lay-verify="required" placeholder="yy-mm-dd" autocomplete="off" >\n' +
'\t</div>\n' +
'\t<div class="layui-input-inline" style="width:11px;line-height: 36px;">-</div>\n' +
'\t<div class="layui-input-inline trainEndtimeCon" style="width:125px;">\n' +
'\t<input type="text" name="trainEndtime" id="trainEndtime'+num+'" lay-filter="trainEndtime" class="layui-input trainEndtime" lay-verify="required" placeholder="yy-mm-dd" autocomplete="off" >\n' +
'\t</div>\n' +
'\t</div>\n' +
// '\t共<span class="daysNum"></span>天 \n' +
'\t共<input class="daysNum daysNum'+num+' layui-input" lay-filter="trainDays" id="trainDays">天 \n' +
// '\t<span class="countDays" data-method="countDays" id="countDays">计算</span> \n' +
'\t</div>\n' +
'\t<div class="layui-form-item">\n' +
'\t<div class="layui-inline peixun">\n' +
'\t<label class="layui-form-label">培训费用:</label>\n' +
'\t<div class="layui-input-inline" style="width: 100px;">\n' +
'\t<input type="text" name="trainCost" id="trainCost" lay-filter="trainCost" class="layui-input trainCost" >\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t<div class="layui-inline zhusu">\n' +
'\t<label class="layui-form-label">住宿费:</label>\n' +
'\t<div class="layui-input-inline" style="width: 100px;">\n' +
'\t<input type="text" name="hotelCost" id="hotelCost" lay-filter="hotelCost" class="layui-input hotelCost" >\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t<div class="layui-inline canfei">\n' +
'\t<label class="layui-form-label">餐费:</label>\n' +
'\t<div class="layui-input-inline" style="width: 100px;">\n' +
'\t<input type="text" name="mealsCost" id="mealsCost" lay-filter="mealsCost" class="layui-input mealsCost" >\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t<div class="layui-inline other">\n' +
'\t<label class="layui-form-label">其他:</label>\n' +
'\t<div class="layui-input-inline" style="width: 100px;">\n' +
'\t<input type="text" name="otherCost" id="otherCost" lay-filter="otherCost" class="layui-input otherCost" >\n' +
'\t</div>\n' +
'\t</div>\n' +
// '\t共<span class="moneyNum"></span>元 <span class="countMoney" id="countMoney" data-method="countMoney">计算</span> \n' +
'\t共<input class="moneyNum layui-input" lay-filter="totalCost" id="totalCost" name="totalCost" >元 \n' +
// '\t<span class="countMoney" id="countMoney" data-method="countMoney">计算</span> \n' +
'\t</div>\n' +
'\t<div class="layui-form-item">\n' +
'\t<div class="layui-inline">\n' +
'\t<label class="layui-form-label"> <span class="mustItem">*</span> 主办单位:</label>\n' +
'\t<div class="layui-input-inline planpartInput">\n' +
'\t<input type="text" name="sponsorUnitName" lay-verify="required" id="sponsorUnitName'+num+'" lay-filter="sponsorUnitName" class="layui-input sponsorUnitName" data-type="sponsorUnitName'+num+'">\n' +
'\t<input type="hidden" name="sponsorUnit" id="sponsorUnit'+num+'" lay-filter="sponsorUnit" class="layui-input sponsorUnit" data-type="sponsorUnit'+num+'">\n' +
'\t<button class="layui-btn layui-btn-normal planpartBtn" data-type="sponsorUnitName'+num+'">选择</button>\n' +
'\t<button class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal clearplanpartBtn sponsorUnitName'+num+' layui-hide" data-type="sponsorUnitName'+num+'" > <i class="layui-icon layui-icon-close"></i> </button>\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t<div class="layui-inline">\n' +
'\t<label class="layui-form-label">承办单位:</label>\n' +
'\t<div class="layui-input-inline planpartInput">\n' +
'\t<input type="text" name="undertakingUnitName" id="undertakingUnitName'+num+'" lay-filter="undertakingUnitName" class="layui-input undertakingUnitName" data-type="undertakingUnitName'+num+'">\n' +
'\t<input type="hidden" name="undertakingUnit" id="undertakingUnit'+num+'" lay-filter="undertakingUnit" class="layui-input undertakingUnit" data-type="undertakingUnit'+num+'">\n' +
'\t<button class="layui-btn layui-btn-normal planpartBtn" data-type="undertakingUnitName'+num+'">选择</button>\n' +
'\t<button class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal clearplanpartBtn undertakingUnitName'+num+' layui-hide" data-type="undertakingUnitName'+num+'" ><i class="layui-icon layui-icon-close"></i></button>\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t<div class="layui-inline">\n' +
'\t<label class="layui-form-label"> 协办单位:</label>\n' +
'\t<div class="layui-input-inline planpartInput">\n' +
'\t<input type="text" name="coRganizerName" id="coRganizerName'+num+'" lay-filter="coRganizerName" class="layui-input coRganizerName" data-type="coRganizerName'+num+'">\n' +
'\t<input type="hidden" name="coRganizer" id="coRganizer'+num+'" lay-filter="coRganizerCode" class="layui-input coRganizer" data-type="coRganizer'+num+'">\n' +
'\t<button class="layui-btn layui-btn-normal planpartBtn" data-type="coRganizerName'+num+'">选择</button>\n' +
'\t<button class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal clearplanpartBtn coRganizerName'+num+' layui-hide" data-type="coRganizerName'+num+'" > <i class="layui-icon layui-icon-close"></i> </button>\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t<div class="layui-form-item">\n' +
'\t<label class="layui-form-label"> 联合培训单位:</label>\n' +
'\t<div class="layui-input-block jointPub">\n' +
'\t<input type="text" name="jointUnitName" id="jointUnitName'+num+'" lay-filter="jointUnitName" class="layui-input jointUnitName" data-type="jointUnitName'+num+'" title="" style="padding-right: 165px;">\n' +
'\t<input type="hidden" name="jointUnit" id="jointUnit'+num+'" lay-filter="jointUnit" class="layui-input jointUnit" data-type="jointUnit'+num+'">\n' +
'\t<button class="layui-btn layui-btn-normal jointPubBtn" data-type="jointUnitName'+num+'">选择</button>\n' +
'\t<button class="layui-btn layui-btn-normal clearjointPubBtn" data-type="jointUnitName'+num+'" >清空重选</button>\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t</div>\n' +
'\t</div>\n'
$('.classCount').append(addqishu);
form.render();
var trainstartDate2 = laydate.render({
elem:'#trainStarttime'+num
,type:'date'
,format: 'yyyy-MM-dd'
,showBottom: false
,trigger: 'click'
,min:'nowTime'//默认最大值为当前日期
,done:function(value,date){
trainendDate2.config.min= {
year:date.year,
month:date.month-1,//关键
date:date.date
};
//选完自动 计算时间
if($('#trainEndtime'+num).val()){
$('.daysNum'+num).val(getDays(value,trainendDate2.config.elem[0].value))
}
}
})
var trainendDate2 = laydate.render({
elem: "#trainEndtime"+num
,type:'date'
,format: 'yyyy-MM-dd'
,showBottom: false
,trigger: 'click'
,min:'nowTime'
,done:function(value,date){
trainstartDate2.config.max={
year:date.year,
month:date.month-1,//关键
date:date.date
}
//选完自动 计算时间
$('.daysNum'+num).val(getDays(trainstartDate2.config.elem[0].value, value))
}
})
}
}
//计算天数
function getDays(startDate,endDate){
//console.log(startDate,endDate)
var date1Str = startDate.split("-");//将日期字符串分隔为数组,数组元素分别为年、月、日
//根据年、月、日的值创建Date对象
var date1Obj = new Date(date1Str[0],(date1Str[1]-1),date1Str[2]);
var date2Str = endDate.split("-");
var date2Obj = new Date(date2Str[0],(date2Str[1]-1),date2Str[2]);
var t1 = date1Obj.getTime();//返回从1970-1-1开始计算到Date对象中的时间之间的毫秒数
var t2 = date2Obj.getTime();//返回从1970-1-1开始计算到Date对象中的时间之间的毫秒数
var datetime=1000*60*60*24; //一天时间的毫秒值
var minusDays = Math.floor(((t2-t1)/datetime));//计算出两个日期天数差
var days = Math.abs(minusDays);//如果结果为负数,取绝对值
return days+1;
}