jquery代码的问题,求指导

图片说明

同图片一样
比如说提取提起后面的下拉款是七天
完了输入金额(10000) 不选择上浮(可选可不选) 相差天数= 用提取日期-存入日期也就是
2016-5-31 - 2016-5-16 = 15天 (提取日期不可小于存入日期)

下面图片的出了 7天的利息是 2.14 因为相差天数 是15天 也就是 2个七天 一个一天
所以我想得到的是 2个七天的利息 和一个 活期的利息 的总额

下面是我的代码 求大神看看那写错了

4个回答

你改下 function getDays1() 这个函数返回 有多少个


                                                                                                                 <option value="1">1天</option>
                                                                                                                                                            <option  value="7">7天</option>
                                                                                                                                                            <option value="90">3个月</option>
                                                                                                                                                            <option value="180"> 6个月</option>
                                                                                                                                                            <option value="365">1年</option>
                                                                                                                                                            <option value="730">2年</option>
                                                                                                                                                            <option value="1095">3年</option>
                                                                                                                                                            <option value="1825">5年</option>

这种就行了

       //计算截止改变后和起止相差的天数
        function getDays1() {
            var s1 = $("#EntTime32").val();
            var s2 = $("#EntTime31").val();
            if (!/^\d{4}(-\d{1,2}){2}$/.test(s1) || !/^\d{4}(-\d{1,2}){2}/.test(s2)) return 0;//格式错误直接返回0

            var d1 = new Date(s1.replace(/[\-\.]/g, '/'));
            var d2 = new Date(s2.replace(/[\-\.]/g, '/'));
            var ms = Math.abs(d2.getTime() - d1.getTime());//毫秒
            var d = ms / 1000 / 60 / 60 / 24;//转为天

            var data = { '5年': 0, '3年': 0, '2年': 0, '1年': 0, '6个月': 0, '3个月': 0, '7天': 0, '1天': 0 };

            data['5年'] = Math.floor(d / 1825); d -= data['5年'] * 1825;
            data['3年'] = Math.floor(d / 1095); d -= data['3年'] * 1095;
            data['2年'] = Math.floor(d / 730); d -= data['2年'] * 730;
            data['1年'] = Math.floor(d / 365); d -= data['1年'] * 365;
            data['6个月'] = Math.floor(d / 180); d -= data['6个月'] * 180;
            data['3个月'] = Math.floor(d / 90); d -= data['3个月'] * 90;
            data['7天'] = Math.floor(d / 7); d -= data['7天'] * 7;
            data['1天'] = d;

            return d;

        }
     //计算提取日期
        $("#bizhong,#input1,#shangfu,#EntTime31,#EntTime32").change(function () {
            var time = $("#time option:selected").val();
            var sf1 = $("#shangfu option:selected").val();
            var bz = $("#bizhong option:selected").val();
            var money1 = $("#input1").val();
            var day = getDays1();//获取相差天数
           //自己根据 5年,3年之类的进行计算。。
            var day1 = day['1天']//
            var day7=day['7天']
           //......
qq_15290009
热呛 你上面给我的我没写出来啊 我没看懂你这是啥意思啊 你能给我写个dom吗
3 年多之前 回复
qq_15290009
热呛 defaultKey: { : '"蒲式耳(美固)"', 这个是匹配的那个 是这样引起吗
3 年多之前 回复
qq_15290009
热呛 可以吗
3 年多之前 回复
qq_15290009
热呛 是的 括起来了 就是替换完你新给我的正则 就不好使了 是控制 我打包给你 你能帮我看看吗?
3 年多之前 回复
showbo
支付宝加好友偷能量挖 回复热呛: 不是回你了,键名称有特殊字符要用引号扩起 {'米(m)':{'分米(cm)':10.....
3 年多之前 回复
qq_15290009
热呛 对了 个 那个单位换算的那个数组 是不是 不能有括号 点 跟横杠 什么的
3 年多之前 回复
qq_15290009
热呛 好的
3 年多之前 回复
showbo
支付宝加好友偷能量挖 回复热呛: 自己修改逻辑,day存储的就是你select里面对应的组,依据利率计算就行了
3 年多之前 回复
qq_15290009
热呛 var day1 = day['1天'] 直接在这下面计算吗 写上计算方法 是吗
3 年多之前 回复
showbo
支付宝加好友偷能量挖 data['1天'] = d; return d; }这里搞错了,应该是return data
3 年多之前 回复

js

 $(document).ready(function() {
      //初始化存入日期
        var d = new Date();
        var s2 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        $('#EntTime32').val(s2);


        //计算截止改变后和起止相差的天数
        function getDays1() {
        var s1 = $("#EntTime32").val();
        var s2 = $("#EntTime31").val();
        if (!/^\d{4}(-\d{1,2}){2}$/.test(s1) || !/^\d{4}(-\d{1,2}){2}/.test(s2)) return 0;//格式错误直接返回0

        var d1 = new Date(s1.replace(/[\-\.]/g, '/'));
        var d2 = new Date(s2.replace(/[\-\.]/g, '/'));
        var ms = Math.abs(d2.getTime() - d1.getTime());//毫秒
        var d = ms / 1000 / 60 / 60 / 24;//转为天
        return d;

    }
        //计算提取日期
        $("#time").change(function () {
            var time = $("#time option:selected").val();

            var d = new Date($("#EntTime32").val().replace(/-/g, "/"));
            d.setDate(parseInt(d.getDate()) + parseInt(time));
            var s1 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
            $('#EntTime31').val(s1);


        });
        //计算提取日期
        $("#bizhong,#input1,#shangfu,#EntTime31,#EntTime32").change(function () {
            var time = $("#time option:selected").val();
            var sf1 = $("#shangfu option:selected").val();
            var bz = $("#bizhong option:selected").val();
            var money1 = $("#input1").val();
            var day = getDays1();//获取相差天数
            alert(day);
            var huoqi = (day%cunqi)/360; //获取多出天数
            alert(huoqi);
            //人民币
            if(bz == 1){
                var huoqililv = 0.35/100;//活期利率

                //一天的利息与多出来的活期利息
                if(time == 1 ){

                    var yt = 0.55;
                    if (sf1 != 0) {
                        sum2 = money * (1 / 360) * (sf / 100) * (yt / 100);
                    } else {
                        sum2 = money * (1 / 360) * (yt / 100);
                    } 

                    var lx = money1*(times*yt+huoqi*huoqililv)/100; //利息
                    var lxs = lx+sum2
                    var sum1 = money1+lxs;
                    $("#li").val(lxs.toFixed(2));
                    $("#bxhj").val(sum1.toFixed(2));
                }
            }
            var d = new Date($("#EntTime32").val().replace(/-/g, "/"));
            d.setDate(parseInt(d.getDate()) + parseInt(time));
            var s1 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
            $('#EntTime31').val(s1);


        });
});

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>

                                                                                                                                          <tr>
                                                                                                                                                <td>提取日期  </td>
                                                                                                                                                <td>
                                                                                                                                                      <input type="text" class="date" id="EntTime31" name="EntTime31"  onBlur="changeResult1()" onclick="return showCalendar('EntTime31', 'y-mm-dd');return check()"  /><span>请点击</span>
                                                                                                                                                      <select id="time" style="width:20%;height:35px;margin-left:20px;">
                                                                                                                                                            <option value="0">请选择</option>
                                                                                                                                                            <option value="1">1天</option>
                                                                                                                                                            <option  value="7">7天</option>
                                                                                                                                                            <option value="90">3个月</option>
                                                                                                                                                            <option value="180"> 6个月</option>
                                                                                                                                                            <option value="365">1年</option>
                                                                                                                                                            <option value="730">2年</option>
                                                                                                                                                            <option value="1095">3年</option>
                                                                                                                                                            <option value="1825">5年</option>

                                                                                                                                                      </select>
                                                                                                                                                </td>
                                                                                                                                            </tr>
                                                                                                                                        <tr>
                                                                                                                                            <td>
                                                                                                                                                利息
                                                                                                                                            </td>
                                                                                                                                            <td>
                                                                                                                                                <input id = "li" type="text" class="cc3"/>元
                                                                                                                                            </td>
                                                                                                                                        </tr>    
                                                                                                                                         <tr>
                                                                                                                                            <td>
                                                                                                                                                本息合计
                                                                                                                                            </td>
                                                                                                                                            <td>
                                                                                                                                                <input id="bxhj"  type="text" class="cc3"/>元
                                                                                                                                            </td>
                                                                                                                                        </tr>      


                                                                                                                                        </tbody>

                                                                                                                    </table>

                                                                                                                      <input type="button" id="submit2" value="开始计算"/>
                                                                                                                     <input type="reset" class="bt" value="重置"/>

那你这代码运行的是有错还是没错啊,如果有错调试就可以了。还有涉及到金钱的好像有专门的类型的,要不然你的钱数是会四舍五入的。你可以看看相关的帮助
文档。

u012216727
大河行脚 http://www.jquery123.com/有问题多百度一下。结果出不来就用alert一行一行调试呀,如果哪行调试有问题就改哪行的。
3 年多之前 回复
qq_15290009
热呛 有错 结果出不来 调试半天不好使 文档有网址吗?
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!