@DERUINO
frontend Разработчик

Как передать value ползунков jquery-ui slider в форму?

Я не понимаю, почему у меня не передается значение value при отправке формы. Хочу отправлять данные из ползунков jquery-ui в виде письма на почту, но на почте в строках input пусто. Если вытягивать значение через $('.selector').val(); то он его отображает корректно, но при самой отправке формы значение почему то не передается.

Ajax отправки формы:
$(".form").submit(function (e) {
     e.preventDefault();
      var form_data = $(this).serialize();
      $.ajax({
          type: "POST",
          url: "mail.php",
          cache: false,
          data: form_data,
          success: function () {
      		alert('ok');
      	}
      });
});


php обработчик письма:
<?php
	$slides = ($_POST['slides']);
	$screens = ($_POST['screens']);
	$select = ($_POST['select']);
	$select2 = ($_POST['select2']);
	$select3 = ($_POST['select3']);
	$select4 = ($_POST['select4']);
	$select5 = ($_POST['select5']);
	$name = trim($_POST['name']);
	$phone = ($_POST['phone']);
	$total = ($_POST['total']);

	if ($select == 10000) {
		$select = 'Landing Page';
	} else if ($select == 20000) {
		$select = 'Интернет-магазин';
	} else if ($select == 35000) {
		$select = 'Корпоративный сайт';
	}

	if ($select2 == 2500) {
		$select2 = 'Популярные CMS';
	} else if ($select2 == 5000) {
		$select2 = 'Редкие CMS';
	} else if ($select2 == 15000) {
		$select2 = 'Самописная CMS';
	}

	if (isset($select3) == true) {
		$select3 = 'Да';
	} else {
		$select3 = 'Нет';
	}

	if (isset($select4) == true) {
		$select4 = 'Да';
	} else {
		$select4 = 'Нет';
	}

	if (isset($select5) == true) {
		$select5 = 'Да';
	} else {
		$select5 = 'Нет';
	}

	$fromName = 'deruino working';
	$fromMail = 'блабла';

	$emailTo = 'блабла';
	$subject = 'Заявка на расчет';
	$subject = '=?utf-8?b?'. base64_encode($subject) .'?=';
	$headers = "Content-type: text/plain; charset=\"utf-8\"\r\n";
	$headers .= "From: ". $fromName ." <". $fromMail ."> \r\n";

	$body = "Имя: $name\nТелефон: $phone\nСколько будет страниц: $slides\nСколько будет экранов: $screens\nТип сайта: $select\nНачинка сайта: $select2\nДополнительные опции:\nАдаптация: $select3\nМодули: $select4\nДругое: $select5\nИтоговая стоимость: $total";

	if (strlen($phone) > 0) {
	    $mail = mail($emailTo, $subject, $body, $headers, '-f'. $fromMail);
	}
?>


кусок кода формы с нужным импутом:
<div class="col-12 col-sm-12 col-md-6 col-lg-6 col-xl-6 mobile">
	<div class="slides">
		<div class="text slides_title">
			Сколько будет экранов
		</div>
		<div class="slides_ui">
			<div class="size slides_min">0</div>
			<div id="polzunok-1"></div>
			<div class="size slides_max">50</div>
		</div>
		<div class="slides_count">
			<div class="countblock">
				Кол-во экранов: <input type="text" name="slides" id="amount1" value="0" disabled>
			</div>
		</div>
	</div>
</div>
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
wapster92
@wapster92 Куратор тега JavaScript
Очередной "frontend Разработчик" не знающий js. Что ж тыкну носом в 2 строки и может поймешь, что не так ты же фронтендер как никак
var form_data = $(this).serialize();
data: data,
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы