2017-01-06 2 views
0

構造コンセプト: -
基本的に、私は入力を含むモーダルウィンドウを作成しようとしていますし、インデックスページ上の入力がそのために焦点を当てますときにモーダルウィンドウが現在発射データ属性を使用して、同じ属性値を割り当てることによって、それらの間のリンクを作成しました。次の反復の入力値を持つ最初の繰り返し入力の変更値

Javascriptのコンセプトは: -
モーダルウィンドウのため、私は、モーダルオブジェクトを作成しました。モデルオブジェクトにはbindModalメソッドが1つの引数をとり、その引数はデータ属性値です。その値を取った後、bindModalメソッドはその特定の値を含むDOM要素を検索し、検索の後、各ループを使ってそれらを反復処理します。

問題 だから基本的に私は、ユーザーがモデルの入力に入力して起動するたびに、それはインデックスページで入力に自動的に書き込まれるはずですしたいです。

男は私のコードをより最適化するために私を助けて、よく構造化された最も重要なことは、それは私が全体的な仕事におかげ

をやっていること間違いを知らせているすべての場合、私はあなたに感謝しますここではJavaScriptのコード

var modal = function() { 
    this.toggleModal = function() { 
     $('#modal').toggleClass('content--inActive').promise().done(function() { 
      $('#modal__close').on('click',function(){ 
       $('#modal').addClass('content--inActive'); 
      }); 
     }); 
    } 
    this.bindModal = function (bindVal) { 
     var bindValue = $(document).find('[data-modal-bind = ' + bindVal + ']'); 
     $.each(bindValue, function (index) { 
      var bind1 = $(this); 
      if(index === 1) { 
       var bind2 = $(this); 
       $(bind1).change(function(){ 
        $(bind2).val(bind1.val()); 
       }); 
      } 
     }); 

    } 
} 

var open = new modal(); 

$('#input_search').on('click',function(){ 
    open.toggleModal(); 
    open.bindModal('input'); 
}); 
+0

基本的にリアルタイムで値を更新したいですか? – 31piy

+0

はい私はリアルタイムで値を更新したい –

+1

'change'イベントは、フォーカスアウト時に起動します。リアルタイム更新が必要な場合は、代わりに 'keypress'または' keyup'イベントを使用してください。 – 31piy

答えて

0

あなたが欲しいものを行うための一つの方法です:

0行わの

変更:

私はbindValue変数に同じ結合値の入力をキャッシュされ、その後、それらのそれぞれのkeyupイベントを結合しました。 keyupでは、現在の入力の値はvalueになり、内部ループを使用して各入力に割り当てられます。

これにより、入力中に入力が同期されます。あなたの問題を解決することを願っています。

+0

ありがとう、それは私が作ったもう一つのものの構造は有効な構造であるかどうか(良い方法かどうか) –

+0

@ NiteshYadav - 私ホイールの再製造をお勧めしません。 MVVMフレームワークを使用してみてください。これは確実に人生を楽にします。 [ノックアウト](http://knockoutjs.com/)は、このようなタスクのためのよく知られたフレームワークです。 – 31piy

関連する問題