2012-04-27 16 views
1

jQueryでオートコンプリートプラグインを使用していますが、結果の選択をdiv要素に追加する必要があります。それは非表示の入力とテキスト入力です。jQueryオートコンプリートをdivに選択します

これは私のhtmlコードです:

これはjQueryのでは、私の関数である。

$("#buscar").autocomplete({ 
    source: "procesos/buscarPersona.php", 
    minLength: 2, 
    select: function(event, ui) { 
     $("#acreditados") 
      .append('<div class="col50"><p>' 
      + '<input type="hidden" name="id" value="' + ui.item.id_persona + '"/>' 
      + ui.item.value 
      + '</p></div>' 
      + '<div class="col50 f-right"><p>Monto:' 
      + '<input type="text" /></p></div>'); 
     } 
}); 

今私のコードは正常に動作していることでは、しかし、私が示しアペンド機能を維持することが困難見つけます選択結果および追加入力を含む。 load()関数を使ってこれをもっとシンプルにする方法がありますか?最終出力は最後の選択だけでなく、複数の選択肢を追加する必要があります

答えて

1

いくつかの検証や複雑なロジックが必要な場合を除いて、すべての選択に対して、負荷はAjaxを使用しないでください。 。

loadを使用する場合は、選択ごとにサーバーと通信し、htmlを渡します。

IMHOこのソリューションは醜いですが、より効率的です。

編集:

これは別にDIVください:

<div class="dynamiccontentcont"> 
     <div class="col50"> 
      <p><input type="hidden" name="id" value=""/></p> 
     </div> 
     <div class="col50 f-right"> 
     <p>Monto:<input type="text" /></p> 
    </div> 
    </div> 

を選択では、これはあなたが現在でやっていると、選択した値(jQuery('.dynamiccontentcont').clone()

  • 場所を呼び出すことにより、DIV

    1. クローンあなたのコード)
    2. divに追加あなたのコードは
  • +0

    もっとエレガントにするには別の方法はありますか?私はちょうど私がすべての選択に削除ボタンを追加する必要があることに気付きました。私のコードはもっと醜いものになります –

    +0

    2番目のdivはad-class "f-right"を持っているので、クローンは期待どおりに動作しません。 –

    +0

    私の答えを編集し、親とクローン親の中のすべてのコンテンツをラップ – mprabhat

    関連する問題