Маска ввода jQuery не работает

Я пытаюсь настроить страницу пожертвований для людей, чтобы дать деньги некоммерческой организации и позволить им указать использование денег. Я установил, что он суммирует суммы, которые дающий помещает в каждое поле, когда они вводят суммы. Я пытаюсь добавить маску ввода в каждое поле, но это просто делает мой JavaScript сбой и ничего не делает. Вот код, который у меня сейчас есть, который отлично работает перед любыми масками:

<script src="/js/jquery.js"></script>
<script type="text/javascript">
    $(document).ready( function() {
        var calcTot = function() {
            var sum = 0;
            $('.toTotal').each( function(){
                sum += Number( $(this).val() );
                });
            $('#giveTotal').val( '$' + sum.toFixed(2) );
        }

        calcTot();

        $('.toTotal').change( function(){
            calcTot();
            });
        });
</script>

'toTotal' - это имя класса, данное всем поля ввода, которые необходимо добавить; это также класс, которому нужна маска. "giveTotal" - это идентификатор всего поля.

Я пробовал несколько вариантов, которые я нашел на StackOverflow и других сайтах.

Полный Код:

<html>
<head>
    <script src="/js/jquery.js"></script>
    <script type="text/javascript">
        $(document).ready( function() {

            //This is one of the masking codes I attempted.
            $('.toTotal').mask('9.99', {reverse: true});

            //other options I have tried:
            //$('.toTotal').mask('9.99');
            //$('.toTotal').mask('0.00');
            //$('.toTotal').inputmask('9.99');
            //$('.toTotal').inputmask('mask', {'mask': '9.99'});

            var calcTot = function() {
                var sum = 0;
                $('.toTotal').each( function(){
                    sum += Number( $(this).val() );
                    });
                $('#giveTotal').val( '$' + sum.toFixed(2) );
            }
            calcTot();

            $('.toTotal').change( function(){
                calcTot();
                });

            //I have tried putting it here, too

            });
    </script>

    <title>Addition</title>
</head>
<body>
<input type="text" class="toTotal"><br />
<input type="text" class="toTotal"><br />
<input type="text" class="toTotal"><br />
<input type="text" id="giveTotal">
</body>
</html>

1 ответов


в примере кода нет сценария библиотеки маскировки, на который ссылаются. Вам нужно скачать Цифровой Буш Маскируется Входной Плагин Скрипт и скопируйте его в папку JS.

затем добавьте следующую ссылку на скрипт после ' jquery.строки в JS':

<script src="/js/jquery.maskedinput.min.js"></script>