2010-11-19 12 views
1

jQuery'nin .autocomplete eklentisini kullanıyorum ve metin giriş alanına yazıldığında açılan açılır menüde görünen sonuçları oluşturan bazı yardımlardan memnuniyet duyarız.jQuery's formatı nasıl kullanılır? Format, formatMatch ve format .ultutocomplete için biçimlendirme seçenekleri?

otomatik tamamlama doldurmak için veri elde etmek için, bu PHP kullanarak mySQL dan çekin: Bir kullanıcı kendileri için en iyisi otomatik tamamlama seçeneği seçtiğinde

$sql = ('SELECT tag, title, author, content, id FROM labels'); 
$result = mysql_query($sql); 
$Response = array(); 
while($row = mysql_fetch_object($result)){ 
$Response[] = array(
          "id" => $row->id, 
          "name" => $row->tag . ": " . $row->title . ": " . $row->content ."" 
         ); 
} 

, ben "adını dönüştürmek "Bu yöntemi kullanarak" id "içine: var AllTagData =; var Etiketler = [];

for(var i in AllTagData){ 
    Tags.push(AllTagData[i].name); 
    } 

    function getIdFromTag(_name){ 
     for(var i in AllTagData){ 
      if(_name == AllTagData[i].name){ 
       return AllTagData[i].id; 
      } 
     } 
    } 

Şimdiye kadar çok iyi. Son olarak, kullanıcı için çıkış verileri jQuery otomatik tamamlama eklenti kullanmak: Ben formatItem, formatMatch ve formatResult seçeneklerini uygulayarak yardımcı gereken yere

$(document).ready(function(){ 
    $("#Responses").autocomplete({ 
     source: Tags, 
     matchContains: true, 
     autoFill: true, 
     select: function(e, ui){ 
      $("#hidden_tags").val(getIdFromTags($("#Responses").val())); 
      }}); 
}); 

kod Bu son kısmıdır.

Yukarıda verilen PHP'den, etiketlerin, Başlığın ve İçeriğin tümünü "name" içinde çıkardım. Ben kullanıcı için benim otomatik tamamlama seçeneği biçimlendirmek istiyoruz yolu

  • Show Etiketler & Başlığıdır
  • Etiketler, Başlık ve olası eşleşmeleri

için İçeriği ile gizle İçerik

  • Arama Bu nedenle, otomatik tamamlamanın İçerik'te arama yapmasını istesem de, İçeriklerin doldurulmuş otomatik tamamlama listesinde görünmesini istemiyorum. Sadece Etiketlerin ve Başlığın gösterilmesini istiyorum.

    Bu konuda çok fazla sorun yaşıyorum ve bir cevap bulmak için oldukça kapsamlı bir şekilde arama yaptım ve bunun nasıl gerçekleştirilebileceği konusunda vereceğiniz yardımlardan gerçekten memnun kalacaksınız. Daha fazla açıklama gerekiyorsa lütfen takip eden soruları sorun. Teşekkürler!

  • cevap

    0

    Sana eklenti farklı bir sürümünü kullanıyorsanız düşünüyorum, ama bu sefer bakarsak:

    http://code.google.com/p/jquery-autocomplete/

    Sen istemek örneklerle bir dosya index.html bulmak örneğin edecek :

    showResult: function(value, data) { 
        return '<span style="color:red">' + value + '</span>'; 
    }, 
    

    İyi şanslar!

    İlgili konular