Для правильного вопроса надо знать половину ответа
$("#checkbox1").is(':checked') != 'checked'
.is возвращает true или false. Ни то, ни другое не равняется 'checked', соответственно два последних условия будут выполняться всегда.
Для правильного вопроса надо знать половину ответа
Как что делать, добавлять проверки. Исключения ведь вылетают не просто так, а в определённых случаях. Значит можно анализировать значения переменных и не выполнять действия, ведущие к ошибкам, например вызов метода у null или undefined.
Для правильного вопроса надо знать половину ответа
Всё из определения ряда Фибоначчи - следующий элемент ряда равен сумме двух предыдущих элементов.
А "девается" всё в стек. Изучайте, как работает стек вызовов функций в Javascript.
Для правильного вопроса надо знать половину ответа
Абсолютно одновременно - нет, javascript использует очередь событий. Любое зарегистрированное событие, имеющее обработчик, ставится в очередь и обработчик выполняется после обработчиков событий, поставленных в очередь ранее.
Для правильного вопроса надо знать половину ответа
Во-первых, не вставляйте код картинкой, правило 3.8.
Во-вторых, изучайте асинхронность JavaScript, ваш console.log(objAjax) выполняется сразу после отправки Ajax-запроса, но ещё до прихода ответа на запрос.
Для правильного вопроса надо знать половину ответа
Данные с Ajax принимаются так же, как и при обычном запросе, с точки зрения PHP это практически неразличимые варианты.
Для отправки вешаете на чекбокс обработчик события changed и в нём отправляете Ajax-запрос с новым состоянием.
Для отображения текущего состояния либо при генерации страницы запрашиваете состояние из базы и сразу ставите checked, либо после загрузки страницы посылаете Ajax-запрос, который вернёт текущее состояние и по нему переключаете чекбокс.
Для правильного вопроса надо знать половину ответа
Очевидно, потому, что в вашем HTML-коде нет элемента с селектором input[name=inp-price]
По стандарту селектор должен выглядеть как input[name="inp-price"]
Для правильного вопроса надо знать половину ответа
JS, как и практически все языки программирования, использует в качестве разделителя десятичной дроби точку, а не запятую.
Если бы вы удосужились посмотреть в логи консоли браузера, то увидели бы синтаксическую ошибку в строке.