Показать сообщение отдельно
  #1 (permalink)  
Старый 11.12.2018, 22:04
Профессор
Отправить личное сообщение для giwuf Посмотреть профиль Найти все сообщения от giwuf
 
Регистрация: 16.05.2017
Сообщений: 167

Не получается получить значения выбора даты через datapicker
Есть блок с возможностью выбора даты и времени., который реализован с помощью datapicker bootstrap. Ссылка на документацию.

Не могу понять, как получать значения инпутов при выборе данных пользователем, т.к. значение val получаю только, если ввожу значения вручную, а если нажимаю на стрелочку и выбираю через датапикер, то значение в инпуте не задается - почему и как можно решить?

<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css" rel="stylesheet" />
<link href="https://cdnjs.cloudflare.com/ajax/libs/tempusdominus-bootstrap-4/5.1.2/css/tempusdominus-bootstrap-4.css" rel="stylesheet" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment-with-locales.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/tempusdominus-bootstrap-4/5.1.2/js/tempusdominus-bootstrap-4.js"></script>
<script>$(function() {
  $('#datetimepicker3').datetimepicker({
    format: 'DD MMMM',
    locale: 'ru'
  });
  $('#datetimepicker2').datetimepicker({
    format: 'HH'
  });
  $('#datetimepicker1').datetimepicker({
    format: 'mm'
  });
});

	$('.datetimepicker-input').on('click', function() {
	  let $data =  $(this).val();
	  console.log($data);
	});

	$('.input-group-append').on('click', function() {
	  let target = $(this).data('target');
	  console.log(target);
	});

	$('#datetimepicker3').on('click', function() {
	  console.log("click datetimepicker3");
	  let data =  $(this).find('.datetimepicker-input').val();
	  console.log(data);
	});
</script>
<style>.input-group .form-control {
  border-right: none;
}

.input-group .input-group-text {
  background-color: transparent;
}
.datetimepicker-input {
  text-transform:capitalize;
}</style>
<div class="container">
  <div class="form-group">
    <label>Дата</label>
    <div class="row">
      <div class="col-sm-12">

        <div class="input-group date" id="datetimepicker3" data-target-input="nearest">
          <input type="text" class="form-control datetimepicker-input" data-target="#datetimepicker3" />
          <div class="input-group-append" data-target="#datetimepicker3" data-toggle="datetimepicker">
            <div class="input-group-text"><i class="fa fa-caret-down" aria-hidden="true"></i></div>
          </div>
        </div>
      </div>
    </div>
  </div>
  <div class="form-group">
    <label>Время</label>
    <div class="row">
      <div class="col-sm-6">
        <div class="input-group date" id="datetimepicker2" data-target-input="nearest">
          <input type="text" class="form-control datetimepicker-input" data-target="#datetimepicker2" />
          <div class="input-group-append" data-target="#datetimepicker2" data-toggle="datetimepicker">
            <div class="input-group-text"><i class="fa fa-caret-down" aria-hidden="true"></i></div>
          </div>
        </div>
      </div>
      <div class="col-sm-6">
        <div class="input-group date" id="datetimepicker1" data-target-input="nearest">
          <input type="text" class="form-control datetimepicker-input" data-target="#datetimepicker1" />
          <div class="input-group-append" data-target="#datetimepicker1" data-toggle="datetimepicker">
            <div class="input-group-text"><i class="fa fa-caret-down" aria-hidden="true"></i></div>
          </div>
        </div>
      </div>
    </div>
  </div>
</div>
Ответить с цитированием