1

jQuery のMasked Input プラグインを使用して、ユーザーが日付、郵便番号、電話番号などのフィールドに有効な入力を入力できるようにしています (また、Validateを使用して、問題が正しくない限りフォームを送信できないようにしています。ヒント。)

私の問題は、マスクされた入力を使用するものを含む入力の行を複製できる必要があることです。通常、jQueryclone(true)はバインドされたイベントを複製された DOM ノードと一緒にコピーしますが、何らかの理由で、これはマスクされた入力では機能しません。複製された入力をクリックすると、元の入力にフォーカスされます。

プラグインの作成者もこの問題を抱えているようですが、私の知る限り、まだ解決されていません。

誰にも回避策がありますか?unmask()新しい入力を呼び出して、元のルールを適用するためにもう一度実行できると思いますmask()が、それらのルールが何であるかをハードコーディングしたくありません。それらを元の入力から決定して、1 か所でコーディングするだけでよいようにしたいと考えています。

4

1 に答える 1

0

テンプレート プラグイン jQuery の使用、基本的な例:

JS:

var 
  id = 0,
  addNewItem = function() {

   var 
       itemNew =  $('#template-item').tmpl({id: id};

   id++;

   $(itemNew).find('.input-a').XPlugin(); // applied any plugin

   $(itemNew).appendTo('#myTable tbody');

  };

どこでも使用できます。またはイベント発生時

addNewItem();

問題を編集して更新する

問題は次のとおりです。このプラグインは要素参照 (input) を変数 " var input = $ (this);" ("jquery.maskedinput-1.2.2.js" の 85 行目) に保存し、それをすべてのイベントと関数に使用します。要素のクローンを作成する場合は、プラグイン内で、最初の要素を参照します。このため、このプラグインは複製できません。

于 2010-12-03T13:49:10.907 に答える