Q:

Пустое значение в заявке

Кто может подсказать в чем причина? Когда нажимаю кнопку отправить, полученное значение  становится NaN

let input = $('#total_price');

$('button').on('click', function(){
  let price = parseInt($('.'+$(this).attr('id')).text()), // раз класс "цены" и ид кнопки совпадает, то будем это использовать.
      check = $(this).attr('data-check'), // для проверки, типо "вкл\выкл"
      altText = $(this).attr('data-alt-text'); // будем менять текст на кнопке.

  // изменяем данные кнопки
  $(this) 
    .attr({ 
      'data-check': (check == 1 ? 0 : 1), // заменим "статус" активации
      'data-alt-text': $(this).text() // поменяем местами название кнопки
    })
    .text(altText); // относится к смене названия местами
  
  // дальше меняем цену в инпуте
  let val = parseInt(input.val()); // получаем текущую цену
  input.val(check == 1 ? (val - price) : (val + price)); // есть "добавить", то + к цене, если "убрать", то минус.
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form method="post" order="post.php">
<input id="total_price" type="text" value="50" readonly>
<hr>
<div class="price_1">1</div>
<button id="price_1" data-check="0" data-alt-text="Убрать">Добавить</button>
<br>
<div class="price_2">2</div>
<button id="price_2" data-check="0" data-alt-text="Убрать">Добавить</button>
<br>
<div class="price_3">3</div>
<button id="price_3" data-check="0" data-alt-text="Убрать">Добавить</button>
<button type="submit">Отправить</button>
</form>

A:

Вы слушаете событие click на всех кнопках $('button'). Кнопка отправки тоже имеет тег <button>, поэтому, когда вы на неё нажимаете, загорается событие и срабатывает функционал пересчета.
Быстрым фиксом будет заменить селектор на $('button[type!=submit]').
То есть слушать событие на всех кнопках, кроме кнопки, у которой атрибут type="submit".

