Почему эти вычисления форм javascript не работают в Safari и Firefox, а в Chrome - PullRequest
0 голосов
/ 07 января 2012

Я выполняю следующий код: первые две маленькие функции работают, потому что я использую плагин вычисления jquery ... последние 3 не работают в Firefox и Safari, но работают в Chrome

<script type="text/javascript">
$(document).ready(function() {      
    $("input[id^='balance']").sum("keyup", "#totalbalance");
    $("input[id^='payment']").sum("keyup", "#totalpayment");

    $('input.ltv1, input.ltv2').click(function() {
        var ltv1 = parseFloat($('.ltv1').val()||"0");
        var ltv2 = parseFloat($('.ltv2').val()||"0");
        result = ltv2/ltv1;
        total = parseInt(result);
        $('.ltv').text(total);
    }); 

    $('input.bal1, input.bal2, input.bal3, input.ltv2').change(function() {
        var bal1 = parseFloat($('.bal1').val() || "0");
        var bal2 = parseFloat($('.bal2').val() || "0");
        var bal3 = parseFloat($('.bal3').val() || "0");
        var bal = bal1 + bal2 + bal3
        var hv = parseFloat($('.ltv2').val() || "0");
        result = bal / hv;
        total = parseInt(result);
    $('.clv').text(total);
    });

    $('input.bal1, input.bal2, input.bal3, input.income').change(function() {
        var bal1 = parseFloat($('.bal1').val() || "0");
        var bal2 = parseFloat($('.bal2').val() || "0");
        var bal3 = parseFloat($('.bal3').val() || "0");
        var bal = bal1 + bal2 + bal3
        var income = parseFloat($('.income').val() || "0");
        result = bal / income;
        total = parseInt(result);
        $('.dti').text(total);
    });

});

</script>

Яне самый лучший в javascript, поэтому я собрал это воедино ...

В любом случае, сайт имеет значение http://settlementprep.com/pre-qual/homeowner/, и в маленьких квадратиках показаны разные расчеты: ссуда на стоимость и комбинированный ссуда на ипотечныйработа ..

У кого-нибудь есть подсказка?

спасибо

1 Ответ

0 голосов
/ 07 января 2012

В вашем javascript я вижу это:

$('.ltv').text(total);

Но на вашей странице я не вижу никаких объектов с class="ltv".Я вижу этот HTML:

<p id="ltv"></p>

, что подразумевает, что ваш код JavaScript должен быть таким:

$('#ltv').text(total);

То же самое верно для .clv.Код и HTML не совпадают.

К вашему сведению, я также вижу необъявленные глобальные переменные, такие как result и total.Это должны быть локальные переменные (с var перед их первым использованием, чтобы сделать их локальными переменными).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...