Цена должна хорошо меняться при изменении количества, но она не меняется, когда она одна

Цена должна хорошо меняться при регулировании количества, но она не меняется, когда она одна. В чем проблема? От двух все работает правильно. Я хочу модифицировать этот код и спать спокойно. Великие разработчики, пожалуйста, помогите мне.

script

   $(document).ready(function () {
       $('.price_btn input[type="button"]').on('click', function () {
           var $ths = $(this);
           var $par = $ths.parent().parent();
           var $obj = $par.find('input[type="text"]');
           var $input = $par.find('input[id="price2"]');
           var $price2 = parseInt($par.find('strong[name="price2"]').text().replace(/[^0-9]/g, ""));
           var val = $obj.val();

           if ($ths.val() == '-') {
               if (val > 1)
                   $obj.val(--val);
                   $input.val($price2);
           } else if ($ths.val() == '+') {
               if (val < 30)
                   $obj.val(++val);
                   $input.val($price2);
           }
           //수량 변경
           var unit_amount = $par.find('.price_unit').text().replace(/[^0-9]/g, "");
           var quantity = val;
           pay_unit_func($par, unit_amount, quantity);
           pay_total_func();
       });

       function pay_unit_func($par, unit_amount, quantity) {
           //1번 단
           var unit_total_amount = $par.find('.price_amount').text((unit_amount * quantity).toLocaleString());
       }

       function pay_total_func() {
           //2번 단
           var amount_total = 0;
           var converse_unit = 0;
           $('.cart_list li').each(function () {
               converse_unit = $(this).find('.price_amount').text().replace(/[^0-9]/g, "");
               amount_total = amount_total + (parseInt(converse_unit) || 0);
           });

html

          "                        <div class=\"price_btn\">\n" +
           "                            <input type=\"button\" value=\"-\" class=\"minus_btn\">\n" +
           "                            <input style=\"width: 15%;\" type=\"text\" value=\"0\" class=\"number\" name=\"quantity\" id=\"quantity\">\n" +
           "                            <input type=\"button\" value=\"+\" class=\"plus_btn\">\n" +
           "                        </div>\n" +
           "                <div class=\"total_p\" style='margin-top:30px; margin-left: -2px;'>\n" +
           "                    <p style=\"font-size: 18px;\">가격<strong name=\"price2\" id=\"price2\" class=\"price_amount\" style=\"font-size: 18px; color: #849160; margin-left: 180px;\">" + 0 + "</strong>원\n" +
           "                     <input name=\"price2\" id=\"price2\" class=\"number\"\>" +
           "                </div>\n" +

Я думаю, что это проблема.

   $(document).ready(function () {
       $('.price_btn input[type="button"]').on('click', function () {
           var $ths = $(this);
           var $par = $ths.parent().parent();
           var $obj = $par.find('input[type="text"]');
           var $input = $par.find('input[id="price2"]');
           var $price2 = parseInt($par.find('strong[name="price2"]').text().replace(/[^0-9]/g, ""));
           var val = $obj.val();

           if ($ths.val() == '-') {
               if (val > 1)
                   $obj.val(--val);
                   $input.val($price2);
           } else if ($ths.val() == '+') {
               if (val < 30)
                   $obj.val(++val);
                   $input.val($price2);
           }
Вернуться на верх