jquery存款利息计算!!!
问题描述:
如图片上的一样 俩个问题
一、如果存入日期是5 .31 号的话 那就 三个月 到期日是 8.31 六个月是11.30 也就是说默认最后一天到期日 如果是 5.21 那三个月就是 8月21 六个月就是 11月 21 以此类推 还要考虑进去 2月份的情况 我想问的是 在我源代码的情况下 添加什么能实现
二、 我写额下面到期日 默认是当天日期 加上多少天=到期日 但是我想改变了 存入日期 下面的到期日 也改变 比如说 存入是 5.24 一天到期日就是 5.25 这样
声明: 最好在我原先上的代码 去改 如果另写我还的重新去琢磨什么意思 时间紧 谢谢
下面我截取代码一下部分 能运行的
答
改3个月和6个月这个地方,时间计算部分
d = new Date(utc);
var m1 = d.getMonth() + 1 + 3; //目标月份
if (m1 > 12) m1 = m1 % 12;
d.setMonth(d.getMonth() + 3);
if (d.getMonth() + 1 != m1){//出现进位操作,需要循环-1直到和目标月份一致
do { d.setDate(d.getDate() - 1); } while (d.getMonth() + 1 != m1);
}
d = new Date(utc);
var m1 = d.getMonth() + 1 + 6;//目标月份
if (m1 > 11) m1 = m1 % 12;
d.setMonth(d.getMonth() + 6);
if (d.getMonth() + 1 != m1) {
do { d.setDate(d.getDate() - 1); } while (d.getMonth()+1 != m1)
}
答
html
<table cellpadding="0" cellspacing="1" >
<thead>
<tr class="gx" >
<td><span id="sp1">*</span>存入金额 </td>
<td>
<input type="text" class="cc4" id="input1" />
(必输项)
</td>
</tr>
</thead>
<tbody>
<tr>
<td>上浮区间 </td>
<td >
<select id="shangfu" style="width:20%;height:35px;margin-left:20px; padding-left:5px;">
<option>0</option>
<option>10</option>
<option>20</option>
<option>30</option>
</select><span>%</span>
</td>
</tr>
<tr>
<td>存入日期 </td>
<td>
<input type="text" class="date" id="EntTime32" name="EntTime32" onclick="return showCalendar('EntTime32', 'y-mm-dd');" value="" /><span>请点击</span>
</td>
</tr>
</tbody>
</table>
<input type="button" id="submit2" value="开始计算"/>
<input type="reset" class="bt" value="重置"/>
</div>
<div class="output">
<h4>计算结果</h4>
<hr class="hi"/>
<div >
<table id="table" border="1" cellspacing="0" cellpadding="10" width="1000px">
<thead>
<tr>
<td >
<select id="bizhong" style="width:70%;height:35px;text-align:cente; margin-top:10px;margin-left:20px; background-color:rgb(236,224,31);border:none;">
<option value="1">人民币</option>
<option value="2">美元</option>
<option value="3">英镑</option>
<option value="4">欧元</option>
<option value="5">日元</option>
<option value="6">港币</option>
<option value="7">加拿大元</option>
<option value="8">瑞士法郎</option>
<option value="9">新加坡元</option>
<option value="10">澳大利亚元</option>
</select>
</td>
<td>利息</td>
<td>利率</td>
<td>本息合计</td>
<td>首次到期日</td>
</tr>
</thead>
<tbody>
<tr id="yitian">
<td id="">1天通知</td>
<td id="lixi"></td>
<td id="lilv"></td>
<td id="benxihj"></td>
<td id="daoqiri"></td>
</tr>
<tr>
<td>7天通知</td>
<td id="lixi1"></td>
<td id="lilv1"></td>
<td id="benxihj1"></td>
<td id="daoqiri1"></td>
</tr>
<tr>
<td>3个月</td>
<td id="lixi2"></td>
<td id="lilv2"></td>
<td id="benxihj2"></td>
<td id="daoqiri2"></td>
</tr>
<tr>
<td>6个月</td>
<td id="lixi3"></td>
<td id="lilv3"></td>
<td id="benxihj3"></td>
<td id="daoqiri3"></td>
</tr>
<tr>
<td>1年</td>
<td id="lixi4"></td>
<td id="lilv4"></td>
<td id="benxihj4"></td>
<td id="daoqiri4"></td>
</tr>
<tr>
<td>2年</td>
<td id="lixi5"></td>
<td id="lilv5"></td>
<td id="benxihj5"></td>
<td id="daoqiri5"></td>
</tr>
<tr>
<td>3年</td>
<td id="lixi6"></td>
<td id="lilv6"></td>
<td id="benxihj6"></td>
<td id="daoqiri6"></td>
</tr>
<tr>
<td>5年</td>
<td id="lixi7"></td>
<td id="lilv7"></td>
<td id="benxihj7"></td>
<td id="daoqiri7"></td>
</tr>
</tbody>
</table>
js
$(document).ready(function () {
//初始化存入日期
var d = new Date();
var s2 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#EntTime32').val(s2);
//处理结果
$("#bizhong,#input1,#shangfu").change(function () {
//获取币种值
var d = new Date();
var utc = $("#EntTime32").val().replace(/-/g, "/");
var a = $("#bizhong option:selected").val();
var money =parseInt( $("#input1").val()) ||0;
var sf = $("#shangfu option:selected").val()
var d = new Date($("#EntTime32").val().replace(/-/g, "/"));///////////////////
//人民币
if (a == 1) {
//一天通知
var yt = 0.55;
if (sf != 0) {
sum = money * (1 / 360) * (sf / 100) * (yt / 100);
} else {
sum = money * (1 / 360) * (yt / 100);
}
$("#lixi").html(sum.toFixed(2));
$("#lilv").html(yt);
var hj = sum + money;
$("#benxihj").html(hj.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(1));
var s1 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri').html(s1);
//七天通知
var qt = 1.1;
if (sf != 0) {
sum1 = money * (7 / 360) * (sf / 100) * (qt / 100);
} else {
sum1 = money * (7 / 360) * (qt / 100);
}
$("#lixi1").html(sum1.toFixed(2));
$("#lilv1").html(qt);
var hj1 = sum1 + money;
$("#benxihj1").html(hj1.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(7));
var s11 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri1').html(s11);
//三个月
var sgy = 1.35;
if (sf != 0) {
sum2 = money * (90 / 360) * (sf / 100) * (sgy / 100);
} else {
sum2 = money * (90 / 360) * (sgy / 100);
}
$("#lixi2").html(sum2.toFixed(2));
$("#lilv2").html(sgy);
var hj2 = sum2 + money;
$("#benxihj2").html(hj2.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(90));
$('#daoqiri2').html(d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate());
//六个月
var lgy = 1.55;
if (sf != 0) {
sum3 = money * (180/ 360) * (sf / 100) * (lgy / 100);
} else {
sum3 = money * (180/ 360) * (lgy / 100);
}
$("#lixi3").html(sum3.toFixed(2));
$("#lilv3").html(lgy);
var hj3 = sum3 + money;
$("#benxihj3").html(hj3.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(180));
var s13 =
$('#daoqiri3').html(d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate());
//一年
var yn = 1.75;
if (sf != 0) {
sum4 = money * (365 / 360) * (sf / 100) * (yn / 100);
} else {
sum4 = money * (365 / 360) * (yn / 100);
}
$("#lixi4").html(sum4.toFixed(2));
$("#lilv4").html(yn);
var hj4 = sum4 + money;
$("#benxihj4").html(hj4.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(365));
var s14 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri4').html(s14);
//俩年
var ln = 2.25;
if (sf != 0) {
sum5 = money * (730 / 360) * (sf / 100) * (ln / 100);
} else {
sum5 = money * (730 / 360) * (ln / 100);
}
$("#lixi5").html(sum5.toFixed(2));
$("#lilv5").html(ln);
var hj5 = sum5 + money;
$("#benxihj5").html(hj5.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(730));
var s15 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri5').html(s15);
//三年
var sn = 2.75;
if (sf != 0) {
sum6 = money * (1095 / 360) * (sf / 100) * (sn / 100);
} else {
sum6 = money * (1095 / 360) * (sn / 100);
}
$("#lixi6").html(sum6.toFixed(2));
$("#lilv6").html(sn);
var hj6 = sum6 + money;
$("#benxihj6").html(hj6.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(1095));
var s16 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri6').html(s16);
//五年
var wn = 2.75;
if (sf != 0) {
sum7 = money * (1825 / 360) * (sf / 100) * (wn / 100);
} else {
sum7 = money * (1825 / 360) * (wn / 100);
}
$("#lixi7").html(sum7.toFixed(2));
$("#lilv7").html(wn);
var hj7 = sum7 + money;
$("#benxihj7").html(hj7.toFixed(2));
d =new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(1825));
var s17 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri7').html(s17);
//美元
} });
答
那不是存入日期也加入就行了,修改存入日期自动调用你那个计算公式
$("#bizhong,#input1,#shangfu,#EntTime32").change(function () {
答
多少个月,多少年用setMonth和setYear,而不是setDate
$(document).ready(function () {
//初始化存入日期
var d = new Date();
var s2 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#EntTime32').val(s2);
//处理结果
$("#bizhong,#input1,#shangfu,#EntTime32").change(function () {
//获取币种值
var d = new Date();
var utc = $("#EntTime32").val().replace(/-/g, "/");
var a = $("#bizhong option:selected").val();
var money = parseInt($("#input1").val()) || 0;
var sf = $("#shangfu option:selected").val()
var d = new Date($("#EntTime32").val().replace(/-/g, "/"));///////////////////
//人民币
if (a == 1) {
//一天通知
var yt = 0.55;
if (sf != 0) {
sum = money * (1 / 360) * (sf / 100) * (yt / 100);
} else {
sum = money * (1 / 360) * (yt / 100);
}
$("#lixi").html(sum.toFixed(2));
$("#lilv").html(yt);
var hj = sum + money;
$("#benxihj").html(hj.toFixed(2));
d = new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(1));
var s1 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri').html(s1);
//七天通知
var qt = 1.1;
if (sf != 0) {
sum1 = money * (7 / 360) * (sf / 100) * (qt / 100);
} else {
sum1 = money * (7 / 360) * (qt / 100);
}
$("#lixi1").html(sum1.toFixed(2));
$("#lilv1").html(qt);
var hj1 = sum1 + money;
$("#benxihj1").html(hj1.toFixed(2));
d = new Date(utc);
d.setDate(parseInt(d.getDate()) + parseInt(7));
var s11 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri1').html(s11);
//三个月
var sgy = 1.35;
if (sf != 0) {
sum2 = money * (90 / 360) * (sf / 100) * (sgy / 100);
} else {
sum2 = money * (90 / 360) * (sgy / 100);
}
$("#lixi2").html(sum2.toFixed(2));
$("#lilv2").html(sgy);
var hj2 = sum2 + money;
$("#benxihj2").html(hj2.toFixed(2));
d = new Date(utc);
// d.setDate(parseInt(d.getDate()) + parseInt(90));
d.setMonth(d.getMonth() + 3);
$('#daoqiri2').html(d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate());
//六个月
var lgy = 1.55;
if (sf != 0) {
sum3 = money * (180 / 360) * (sf / 100) * (lgy / 100);
} else {
sum3 = money * (180 / 360) * (lgy / 100);
}
$("#lixi3").html(sum3.toFixed(2));
$("#lilv3").html(lgy);
var hj3 = sum3 + money;
$("#benxihj3").html(hj3.toFixed(2));
d = new Date(utc);
//d.setDate(parseInt(d.getDate()) + parseInt(180));
d.setMonth(d.getMonth() + 6);
var s13 =
$('#daoqiri3').html(d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate());
//一年
var yn = 1.75;
if (sf != 0) {
sum4 = money * (365 / 360) * (sf / 100) * (yn / 100);
} else {
sum4 = money * (365 / 360) * (yn / 100);
}
$("#lixi4").html(sum4.toFixed(2));
$("#lilv4").html(yn);
var hj4 = sum4 + money;
$("#benxihj4").html(hj4.toFixed(2));
d = new Date(utc);
//d.setDate(parseInt(d.getDate()) + parseInt(365));
d.setYear(d.getFullYear() + 1);
var s14 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri4').html(s14);
//俩年
var ln = 2.25;
if (sf != 0) {
sum5 = money * (730 / 360) * (sf / 100) * (ln / 100);
} else {
sum5 = money * (730 / 360) * (ln / 100);
}
$("#lixi5").html(sum5.toFixed(2));
$("#lilv5").html(ln);
var hj5 = sum5 + money;
$("#benxihj5").html(hj5.toFixed(2));
d = new Date(utc);
// d.setDate(parseInt(d.getDate()) + parseInt(730));
d.setYear(d.getFullYear() + 2);
var s15 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri5').html(s15);
//三年
var sn = 2.75;
if (sf != 0) {
sum6 = money * (1095 / 360) * (sf / 100) * (sn / 100);
} else {
sum6 = money * (1095 / 360) * (sn / 100);
}
$("#lixi6").html(sum6.toFixed(2));
$("#lilv6").html(sn);
var hj6 = sum6 + money;
$("#benxihj6").html(hj6.toFixed(2));
d = new Date(utc);
//d.setDate(parseInt(d.getDate()) + parseInt(1095));
d.setYear(d.getFullYear() + 3);
var s16 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri6').html(s16);
//五年
var wn = 2.75;
if (sf != 0) {
sum7 = money * (1825 / 360) * (sf / 100) * (wn / 100);
} else {
sum7 = money * (1825 / 360) * (wn / 100);
}
$("#lixi7").html(sum7.toFixed(2));
$("#lilv7").html(wn);
var hj7 = sum7 + money;
$("#benxihj7").html(hj7.toFixed(2));
d = new Date(utc);
// d.setDate(parseInt(d.getDate()) + parseInt(1825));
d.setYear(d.getFullYear() + 5);
var s17 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
$('#daoqiri7').html(s17);
//美元
}
});
});
答
是这个意思 啊