Как в Vue реагировать на изменение в value сделанные через jQuery?

Есть поле с datetimepicker (плагин jQuery). После использования его в поле появляется значение даты, но watch (Vue) на него не реагирует.
Создал скрытое поле в которое заношу значение в атрибут value через jQuery. Опять watch не реагирует.
<input class="form-control form-control-sm datetimepicker" id="selectDateStart" value="" type="text" aria-describedby="selectDate"/>
<div class="input-group-append"><span class="input-group-text"><i class="far fa-calendar-alt"></i></span></div>
<input type="hidden" id="dateStart" v-model="filterParam.dateStart">


$('.datetimepicker').datetimepicker({
              format: 'dd.mm.yyyy hh:ii:ss',
              autoclose:true,
              language: 'ru'
          })
          .on('changeDate', function(ev) {
              var value = $("#selectDateStart").val();
              $("#dateStart").attr("value", value)
          });


Как быть в данной ситуации ?
  • Вопрос задан
  • 387 просмотров
Решения вопроса 2
@lemme
Frontend
Нужно диспатчить ивент...

jsfiddle.net/yzL80jpx
Ответ написан
Комментировать
@kttotto
пофиг на чем писать
Не проверял в коде, но можно попробовать как то так
dateTime: DateTime = new DateTime();

mounted(){
	const self = this;
	this.nextTick(function(){
		$('.datetimepicker').datetimepicker({
            format: 'dd.mm.yyyy hh:ii:ss',
            autoclose:true,
            language: 'ru'
        })
        .on('changeDate', function(ev) {
            var value = $("#selectDateStart").val();
            self.dateTime = value;
        });
	})
}

@Watch("dateTime")
onDateTime(){
	// ...
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы