2 qq 15290009 qq_15290009 于 2016.03.01 09:27 提问

无法进行计算??????
 //获取天数 
    function getDays(s1, s2) {
        var s1 = $("#EntTime31").val('');
        var s2 = $("#EntTime30").val('');
        var d1 = new Date(s2.replace(/-/g, '/'));
        var d2 = new Date(s1.replace(/-/g, '/'));
        var ms = Math.abs(d2.getTime() - d1.getTime());//毫秒
        var d = ms / 1000 / 60 / 60 / 24;//转为天
        return d;
    }

         $(document).ready(function () {

        //显示当前日期
        var d = new Date();
        var s2 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        $('#EntTime30').val(s2);

        //显示截止日期
        var d = new Date();
        var s1 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        $('#EntTime31').val(s1);
     $("#input,#input1").change(function () { $(':radio[id^="1-"]:checked').trigger('click'); 
            var day = getDays();
             Costcalculator3(input,input1,day );
        });

});
//计算逾期违约金
function Costcalculator3(input,input1,day ){
        input = parseFloat(input) || 0;
        input1 = parseFloat(input) || 0;
        day = parseFloat(day) || 0;

        var lj5 = 0;
        lj5 = input*input1/100*day*2;
        $("#lj5").val(lj5);
        }

图片说明
图片说明

算不了 是获取天数那快没参数 还是怎么的 在我的基础上改 谢谢

input 是金额 input1 是利率

错误在下面的图片
图片说明

5个回答

rui888
rui888   Ds   Rxr 2016.03.01 11:23
已采纳

还有

   $("#input,#input1").change(function () { 
     //你这个应该是 利率选项吧,不过代码中并没有体现利率选项更改之后是否重新赋值。
                $(':radio[id^="1-"]:checked').trigger('click'); 

            var day = getDays();
                        你这里的input和 input1数据从哪里来的,没有取值
                       var input= $("#input").val();
                          var input1= $("#input1").val();
             Costcalculator3(input,input1,day );
        });

你把你代码重新检查检查,然后打印出 标的金额*利率*(截止日期-起算日期)*2 的每一个变量
然后知道那一个出错就找那一个的源头。

qq_15290009
qq_15290009 额 我们公司没领导 有也不懂 就我自己 还有一个是写页面的其他不管 不是那种专门写程序的 是自己开发自己公司用的网站 我新开个贴 你去哪里答 我吧这个结了 http://ask.csdn.net/questions/239832#answer_223512
2 年多之前 回复
rui888
rui888 回复热呛: 问问你们领导看看,我这里只能上技术网站,公司封网络,下载什么的。
2 年多之前 回复
qq_15290009
qq_15290009 回复无法显示此用户: 额 我道行浅薄 没调试出来 要不我代码发出来 你帮我调式一下 可以吗
2 年多之前 回复
qq_15290009
qq_15290009 在还是不在了
2 年多之前 回复
rui888
rui888 回复热呛: 看不出来,调试js吧。
2 年多之前 回复
rui888
rui888 回复热呛: 看不出来,调试js吧。
2 年多之前 回复
rui888
rui888 回复热呛: 看不出来,调试js吧。
2 年多之前 回复
qq_15290009
qq_15290009 ?????
2 年多之前 回复
qq_15290009
qq_15290009 也没报错误啊 那个年月日那个 也转换不了 我下面写的那个 执行计算的时候 执行 Costcalculator2(input,input1,day ){ 这个了 不执行 Costcalculator3(input,input1,day ){了 回答在开一贴 谢谢
2 年多之前 回复
rui888
rui888 回复热呛: 我知道你说的意思啊。放进去不好计算我也不知道你那里出现了问题。
2 年多之前 回复
qq_15290009
qq_15290009 回复无法显示此用户: 不是 我吧这个#EntTime30,#EntTime31 放在$("#input,#input1").change(function () { 这里了 但是他还是无法计算
2 年多之前 回复
rui888
rui888 你要自己学会去调试更改啊。这些都是基本的js 、dom操作。
2 年多之前 回复
rui888
rui888 回复热呛: 你日期改变没有重新计算,是因为你没有重新绑定change 事件。我下面代码中让你把时间传入进去就是重新计算,你光说不起作用,我真的不知道哪里有问题。
2 年多之前 回复
qq_15290009
qq_15290009 $("#input,#input1").change(function () {
2 年多之前 回复
qq_15290009
qq_15290009 应该是这块没有day的值
2 年多之前 回复
qq_15290009
qq_15290009 可以了 现在就差截止日期-起算日期 他俩了 他俩改变了值无法改变
2 年多之前 回复
qq_15290009
qq_15290009 哦哦 我在看看
2 年多之前 回复
rui888
rui888   Ds   Rxr 2016.03.01 10:54

var s1 = $("#EntTime31").val('');
var s2 = $("#EntTime30").val('');
var d1 = new Date(s2.replace(/-/g, '/'));
var d2 = new Date(s1.replace(/-/g, '/'));

            这个干嘛用的 。

            你 可以
             var s1 = $("#EntTime31").val();
    var s2 = $("#EntTime30").val(); 

            这里的单引号去掉看看,
qq_15290009
qq_15290009 额 能是能了 但是不对 公式是这样的 标的金额*利率*(截止日期-起算日期)*2 你帮我好好看看
2 年多之前 回复
rui888
rui888 回复热呛: 上面的错误就是s2 的错误 , var s1 = $("#EntTime31").val(); var s2 = $("#EntTime30").val(); alert(s2); 看看s2 是什么
2 年多之前 回复
qq_15290009
qq_15290009 能计算了 但是计算的数字好离谱啊
2 年多之前 回复
qq_15290009
qq_15290009 var s1 = $("#EntTime31").val(''); var s2 = $("#EntTime30").val(''); 原本是没有这个的 但是显示错误 无法定义 我就给加上了 可是一样
2 年多之前 回复
rui888
rui888   Ds   Rxr 2016.03.01 11:15

你先打印出来看看数据对不,
其次input1 这个少了个1
input = parseFloat(input) || 0;
input1 = parseFloat(**input1**) || 0;

function getDays( ) {
        var s1 = $("#EntTime31").val('');
        var s2 = $("#EntTime30").val('');
        var d1 = new Date(s2.replace(/-/g, '/'));
        var d2 = new Date(s1.replace(/-/g, '/'));
        var ms = Math.abs(d2.getTime() - d1.getTime());//毫秒
        var d = ms / 1000 / 60 / 60 / 24;//转为天
        return d;
    }

         $(document).ready(function () {

        //显示当前日期
        var d = new Date();
        var s2 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        $('#EntTime30').val(s2);

        //显示截止日期
        var d = new Date();
        var s1 = d.getFullYear() + "-" + (d.getMonth() + 1) + "-" + d.getDate();
        $('#EntTime31').val(s1);
     $("#input,#input1").change(function () { $(':radio[id^="1-"]:checked').trigger('click'); 
            var day = getDays();
             Costcalculator3(input,input1,day );
        });

});
//计算逾期违约金
function Costcalculator3(input,input1,day ){
        input = parseFloat(input) || 0;
        input1 = parseFloat(input1) || 0;
        day = parseFloat(day) || 0;

alert(input);
alert(input1);
alert(day);
        var lj5 = 0;
        lj5 = input*input1/100*day*2;
        $("#lj5").val(lj5);
        } 
qq_15290009
qq_15290009 额 是对的 那个天数是对的 我把那个1加上了 到计算不了
2 年多之前 回复
rui888
rui888   Ds   Rxr 2016.03.01 11:54

$("#input,#input1").change(function () { $(':radio[id^="1-"]:checked').trigger('click');

把 2个日期再传进去看看。
$("#input,#input1,#EntTime30,#EntTime31").change(function () { $(':radio[id^="1-"]:checked').trigger('click');

qq_15290009
qq_15290009 我贴在下面
2 年多之前 回复
qq_15290009
qq_15290009 还有就是 不有个年月日 选项吗 那个改变 计算不了啊 之前是这样的http://ask.csdn.net/questions/238664 但是经理说不是那个意思 是光最下面的俩 也就是这个图片显示的那个 用到 我现在改了 但是转换不了 你看看 谢谢
2 年多之前 回复
qq_15290009
qq_15290009 试了 不好使
2 年多之前 回复
qq_15290009
qq_15290009   2016.03.01 12:11
 $("#input,#input1").change(function () { $(':radio[id^="1-"]:checked').trigger('click'); 
            var day = getDays();
            var input= $("#input").val();
            var input1= $("#input1").val();
             Costcalculator3(input,input1,day );
             Costcalculator2(input,input1,day );
             Costcalculator1(input,input1,day );
        })

        function Costcalculator3(input,input1,day ){
        input = parseFloat(input) || 0;
        input1 = parseFloat(input1) || 0;
        day = parseFloat(day) || 0;



        var lj5 = 0;
        lj5 = [(input*input1/100)*day]*2;
        $("#lj5").val(lj5);

        var lj12 = 0;
        lj12 = (input*input1/100)*day;
        $("#lj12").val(lj12);
        }

    function Costcalculator2(input,input1,day ){
        input = parseFloat(input) || 0;
        input1 = parseFloat(input1) || 0;
        day = parseFloat(day) || 0;



        var lj5 = 0;
        lj5 = [(input*input1/100)*day]*2/12;
        $("#lj5").val(lj5);

        var lj12 = 0;
        lj12 = (input*input1/100)*day12;
        $("#lj12").val(lj12);
        }

        html
        <tr>
                                                                                                        <td>利率选项: </td>
                                                                                                      <td>
                                                <div class="sortNum">
                                                    <input type="radio" id="1-5" class="sortNum1" name="standard1" onclick="Costcalculator1(parseFloat($('#input').val()) || 0, parseFloat($('#input1').val()) || 0)" />日利率

                                                    <input type="radio" id="1-4" class="sortNum1" name="standard1" onclick="Costcalculator2(parseFloat($('#input').val()) || 0, parseFloat($('#input1').val()) || 0)" />月利率

                                                    <input type="radio" id="1-6" class="sortNum1" name="standard1" onclick="Costcalculator3(parseFloat($('#input').val()) || 0, parseFloat($('#input1').val()) || 0)" checked="checked" /> 年利率
                                                </div>


                                            </td>
                                                                                                    </tr>
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
不能作为非托管结构进行封送处理;无法计算有意义的大小或偏移量
C# 如何获取某个类型或类型实例对象的大小 今天,为了服务器程序出现了,无故内存一直上涨的问题。 为了想弄清楚,程序中,哪一模块占的内存比较大,而做个统计(Console,或是log之类的) 但一开始,在统计类型或类型实例对象时,出了个异常: “不能作为非托管结构进行封送处理;无法计算有意义的大小或偏移量。”   后来查了一下,原来,我们创建的struc
c++ 计算器
简单计算 加减乘除等 单位i换算,单步计算,无法进行混合计算
C#Lab(二):托管类型和非托管类型以及获取字节大小
一.前言上一篇已经验证过了,结构体包含引用仍然不改变其值类型的特性。 但是对于结构体如何存储(包含)引用类型一直搞不清楚。 后来想到通过其字节大小验证这一猜想:结构体只是包含了引用类型的“存储地址的指针”。二.测试代码using UnityEngine; using System.Collections; using System.Runtime.InteropServices; using S
平台调用——结构的封送
本章关于在C/C++与C#之间使用的结构体。
四则运算计算器
这个计算器可以计算电脑自带计算器无法计算的四则运算。
s3c6410串口调试总结
昨天搞了一下串口,今天总结一下。 首先打开手册的到串口的章节,首先要进行的是配置gpio管脚为串口管脚,对应的管脚为gpa组的这个是一定要设置的,否则无法输出的。 然后就是一次设置数据位 停止位 流控等等。 在这个寄存器上面设置的【11:10】是时钟的选择,这个非常重要,时钟在上一个博客中写过。这个时钟的选择和波特率的设置关系非常的大,如果设置不对应的话,会出现乱码的现象。 上
access两个表中以新建计算字段,在tableau中进行连接,提示错误信息
access中在两个表中分别根据字段“年”、“月”新建一个计算字段“开始日期”,然后根据组织编码+开始日期建立表间连接,结果出现错误。 临时办法: 将两个表建立以组织编码、年、月”三个字段的连接,就是正常的,不知为什么。 在tableau中以组织编码、开始日期建立两表连接,提示:数据库错误 0x80040E57: 字段太小而不能接受所要添加的数据的数量。试着插入或粘贴较少的数
vs2005无法进行设计问题解决办法
vs2005无法进行设计问题vs2005无法进行设计问题
精确运算不能用float/double,用什么类型?
为什么不是2.2float f1=2.1;float f2=0.1;float f3=f1+f2;精确运算不能用float/double,用什么类型? 为什么说不能用 float 和 double 来进行精确小数计算呢?System.out.println( 1.03   -  . 42 ); // 答案是0.6100000000000001 ! System.out.println( 1.00 
寻找一种最佳的分油方案
根据条件进行输入油桶的容量 , 根据操作进行分油、但是如果步骤超过三十步就不再作计算,无法找到最佳分油方案