Vue.jsとjQueryのdatepicker / timepicker双方向バインディング

ブライアンゼリップ

<input>jQueryのdatepickertimepicker<input>値を更新する場合要素を使用したVue.jsとの双方向バインディングは機能ませんバインディングは、ユーザーが内に入力した場合にのみ発生します<input>

<input>datepickerまたはtimepickerを介して更新されたときに、双方向バインディングを実行する必要があります。

私は最も簡単な方法でVue.jsとjQueryを使用しています-<script src=""></script>タグを介してhtmlファイル内からそれらをインポートします。

この問題は既知であり、解決策ありますが、私の問題よりも複雑な状況に対応しています。見つけたソリューションを基本的なユースケースに適合させる方法を理解するのに問題があります(つまり、カスタムディレクティブ、コンポーネント、またはイベントテンプレートを使用していません)。

ここにある私の作業コードのcodepenが

そして、これが私の静的コードの主要部分です:

<form>
  <input v-model="title" name="title" type="text">
  <input v-model="shortDesc" name="shortDesc" type="text">
  <input v-model="date" name="date" type="text">
  <input v-model="time" name="time" type="text">
</form>

<script>
  var elm = new Vue({
    el: '#preview',
    data: {
      title: '',
      shortDesc: '',
      date: '',
      time: ''
    }
  })

  $(function(){
    $("input[name=date]" ).datepicker({
      dateFormat: 'DD, MM dd'
    });
  });


  $('input[name=time]').timepicker({'scrollDefault': 'now'});
</script>
Saurabh

私はそれを行うための純粋な方法を見つけることができませんが、datapickerのonSelectコールバックを使用してこれを行うことができ、このコールバックで日付変数の値を設定できます。

ここで動作中のcodepenを参照してください

私はあなたのvueインスタンスにマウントされたブロックを追加しました:

var elm = new Vue({
  ...
  ...
  mounted () {
    var vm = this
    $('#datedate').datepicker({
      onSelect: function(dateText) { 
        vm.date = dateText
      }
   })
})

日付入力のid属性に追加されます:

<input v-model="date" name="date" class="block col-12 mb1 field" type="text"  id="datedate">

編集

timepickerにはdatepickerのようなonSelectオプションがないため、解決策は、timepickerデモドキュメントの「イベントの例」に実際に示されているchangeTimeイベントを使用することです。

以下のコードは、jQueryのdatepickerとtimepickerの両方のソリューションを備えた更新されたVueスクリプトを提供します。

var elm = new Vue({
  ...
  ...
  mounted() {
    var vm = this
    $('input[name=date]').datepicker({
      dateFormat: 'DD, MM dd',
      onSelect: function(dateText) {
        vm.date = dateText
      }
    }),
    $('input[name=time]').timepicker({'scrollDefault': 'now'}).on('changeTime', function() {
      vm.time = $('input[name=time]').val();
    })
  }
})

そして、これが@saurabhのdatepickerソリューションと@BrianZのtimepickerソリューションの両方を検証する新しいcodepenです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

vue.jsコンポーネント間の双方向データバインディング

分類Dev

Vue.js でのコンポーネントの双方向バインディングの使用

分類Dev

'transparent'ラップされた入力コンポーネントでのVue双方向バインディング

分類Dev

Vue.js:v-forでオブジェクトを使用した双方向データバインディング

分類Dev

Vue-v-bindとpropsを使用したselect要素の双方向バインディング

分類Dev

親コンポーネントと子コンポーネント間のVue.js動的双方向データバインディング

分類Dev

Vueスコープスロットコンポーネントとスロット間の双方向データバインディング

分類Dev

配列と複数のテキスト入力の間にvue.jsで双方向バインディングを作成します

分類Dev

Vue.jsでのデータ割り当てでの双方向データバインディングを回避する

分類Dev

Vue jsでチェックボックスをチップにバインドする方法(双方向バインディング)

分類Dev

Vue双方向プロップバインディング

分類Dev

Vuexとの双方向データバインディング

分類Dev

Vuexとの双方向バインディング

分類Dev

PHPとAngularJSの双方向バインディング

分類Dev

ObjectProperty <Double>とDoubleProperty間の双方向バインディング

分類Dev

双方向のデータバインディングの問題

分類Dev

EditTextでの双方向データバインディング

分類Dev

QMLでの双方向バインディングC ++モデル

分類Dev

Angular 2:ContenteditableModel:双方向のデータバインディング

分類Dev

React withHooksでの双方向データバインディング

分類Dev

Angular双方向データバインディングの代替

分類Dev

Angular双方向データバインディングの代替

分類Dev

Android:双方向のデータバインディング

分類Dev

* ngForでの双方向データバインディング

分類Dev

Angularjsでの双方向データバインディング

分類Dev

双方向バインディングとは何ですか?

分類Dev

INotifyPropertyChangedと双方向バインディング

分類Dev

SwiftUIとCombineを使用した双方向バインディング

分類Dev

wpfの動的要素への動的双方向バインディング

Related 関連記事

  1. 1

    vue.jsコンポーネント間の双方向データバインディング

  2. 2

    Vue.js でのコンポーネントの双方向バインディングの使用

  3. 3

    'transparent'ラップされた入力コンポーネントでのVue双方向バインディング

  4. 4

    Vue.js:v-forでオブジェクトを使用した双方向データバインディング

  5. 5

    Vue-v-bindとpropsを使用したselect要素の双方向バインディング

  6. 6

    親コンポーネントと子コンポーネント間のVue.js動的双方向データバインディング

  7. 7

    Vueスコープスロットコンポーネントとスロット間の双方向データバインディング

  8. 8

    配列と複数のテキスト入力の間にvue.jsで双方向バインディングを作成します

  9. 9

    Vue.jsでのデータ割り当てでの双方向データバインディングを回避する

  10. 10

    Vue jsでチェックボックスをチップにバインドする方法(双方向バインディング)

  11. 11

    Vue双方向プロップバインディング

  12. 12

    Vuexとの双方向データバインディング

  13. 13

    Vuexとの双方向バインディング

  14. 14

    PHPとAngularJSの双方向バインディング

  15. 15

    ObjectProperty <Double>とDoubleProperty間の双方向バインディング

  16. 16

    双方向のデータバインディングの問題

  17. 17

    EditTextでの双方向データバインディング

  18. 18

    QMLでの双方向バインディングC ++モデル

  19. 19

    Angular 2:ContenteditableModel:双方向のデータバインディング

  20. 20

    React withHooksでの双方向データバインディング

  21. 21

    Angular双方向データバインディングの代替

  22. 22

    Angular双方向データバインディングの代替

  23. 23

    Android:双方向のデータバインディング

  24. 24

    * ngForでの双方向データバインディング

  25. 25

    Angularjsでの双方向データバインディング

  26. 26

    双方向バインディングとは何ですか?

  27. 27

    INotifyPropertyChangedと双方向バインディング

  28. 28

    SwiftUIとCombineを使用した双方向バインディング

  29. 29

    wpfの動的要素への動的双方向バインディング

ホットタグ

アーカイブ