Javascript 在文档准备就绪时触发更改事件

Javascript 在文档准备就绪时触发更改事件,javascript,jquery,Javascript,Jquery,我想重新计算一切,不仅是在更改时,而且在页面加载时 我尝试了以下方法: $(document).ready(function () { //trigger misc costs $("input[class~='miscc']").trigger('change'); $("input[class~='misch']").trigger('change'); //other events here.... //add up repeate

我想重新计算一切,不仅是在更改时,而且在页面加载时

我尝试了以下方法:

$(document).ready(function () {

    //trigger misc costs

        $("input[class~='miscc']").trigger('change');
        $("input[class~='misch']").trigger('change');


//other events here....

    //add up repeater miscaleneous mnumbers
    //dollar amoungs
    $("input[class~='miscc']").change(function (event) {
        //only allow numbers
        this.value = this.value.replace(/[^0-9\.]/g, '');

        var sum = 0;
        var num = 0;
        $("input[class~='miscc']").each(function (event) {
            num = parseFloat($(this).val()) || 0;
            sum = sum + num;
        });
        $("input[id*='txtMiscC']").val(sum.toFixed(2));
        $("input[class~='cost']").trigger('change');
    });

    //hours
    $("input[class~='misch']").change(function (event) {
        //only allow numbers
        this.value = this.value.replace(/[^0-9\.]/g, '');

        var sum = 0.00;
        var num = 0;
        $("input[class~='misch']").each(function (event) {
            num = parseFloat($(this).val()) || 0;
            sum = sum + num;
        });
        $("input[id*='txtMiscH']").val(sum.toFixed(1));
        $("input[class~='hours']").trigger('change');
    });
});

但是什么都没有发生,我做错了吗?

您正在绑定事件处理程序之前触发事件。首先绑定处理程序,然后触发事件。

将更改事件添加到底部

$(document).ready(function () {

//other events here....

    //add up repeater miscaleneous mnumbers
    //dollar amoungs
    $("input[class~='miscc']").change(function (event) {
        //only allow numbers
        this.value = this.value.replace(/[^0-9\.]/g, '');

        var sum = 0;
        var num = 0;
        $("input[class~='miscc']").each(function (event) {
            num = parseFloat($(this).val()) || 0;
            sum = sum + num;
        });
        $("input[id*='txtMiscC']").val(sum.toFixed(2));
        $("input[class~='cost']").trigger('change');
    });

    //hours
    $("input[class~='misch']").change(function (event) {
        //only allow numbers
        this.value = this.value.replace(/[^0-9\.]/g, '');

        var sum = 0.00;
        var num = 0;
        $("input[class~='misch']").each(function (event) {
            num = parseFloat($(this).val()) || 0;
            sum = sum + num;
        });
        $("input[id*='txtMiscH']").val(sum.toFixed(1));
        $("input[class~='hours']").trigger('change');
    });

    //trigger misc costs

        $("input[class~='miscc']").trigger('change');
        $("input[class~='misch']").trigger('change');
});