2012-01-03 17 views
13

के साथ ऑटो पूर्ण पूर्ण jquery ऑटो पूर्ण प्लगइन के माध्यम से ऑटो पूर्ण करने की कोशिश कर रहा हूँ। मेरे लिए एक सरल ऑटो पूर्ण काम करता है। मैं अल्पविराम से अलग ऑटो पूर्ण करने में सक्षम नहीं हूँ।कॉमा अलग ऑटो पूर्ण jquery ऑटो पूर्ण

कृपया मुझे बताएं कि मैं कहां गलत हूं।

मेरे jQuery कोड:

$(document).ready(function() { 
$.getJSON('/releases/new.json', function() {  
alert("inside getJson"); 
alert(data1); 
$('#release_tester_tokens').autocomplete({source:names,multiple: true}); 
}); 
}); 

धन्यवाद, राम्या।

+0

मैं एक समारोह में एक ही कोड दे रही है और मेरे विचार फ़ाइल – ramya

उत्तर

13

देखें कि यह walk-through मदद करता है या नहीं।

$("#<%= txtMultipleName.ClientID %>").autocomplete({ 
    source: function (request, response) { 
     $.getJSON("AutoComplete.ashx", { 
      term: extractLast(request.term) 
     }, response); 
    }, 
    search: function() { 
     // custom minLength 
     var term = extractLast(this.value); 
     if (term.length < 1) { 
      return false; 
     } 
    }, 
    focus: function() { 
     // prevent value inserted on focus 
     return false; 
    }, 
    select: function (event, ui) { 
     var terms = split(this.value); 
     // remove the current input 
     terms.pop(); 
     // add the selected item 
     terms.push(ui.item.value); 
     // add placeholder to get the comma-and-space at the end 
     terms.push(""); 
     this.value = terms.join(", "); 
     return false; 
    } 
}); 
function split(val) { 
    return val.split(/,\s*/); 
} 
function extractLast(term) { 
    return split(term).pop(); 
} 

वहाँ भी jQuery UI autocomplete पृष्ठ पर जानकारी के बहुत सारे है: यह निम्नलिखित कोड है जो उपयोगकर्ता की अनुमति देता है अल्पविराम के द्वारा अलग अनेक खोज शब्द दर्ज करने के लिए भी शामिल है।

+0

से बुला यह बेहतर होगा कि यू हमें अपने कोड :) –

+1

@ Md.SharifulIslam https का उदाहरण लिंक रहते दे कर यह उपलब्धि हासिल jqueryui.com/autocomplete/#multiple – ComputerLocus

4

आपके उदाहरण में आप उन चरों तक पहुंच रहे हैं जिन्हें परिभाषित नहीं किया गया है और कभी भी आपके GetJSON कॉल से कोई भी परिणाम नहीं है। JSON में एक अल्पविराम से अलग सूची वास्तव में एक सरणी है (यदि यह [] ब्रैकेट में है)। यदि यह एक स्ट्रिंग है तो स्रोत सरणी बनाने के लिए बस String split का उपयोग करें। //:

$(document).ready(function() { 
    $.getJSON('/releases/new.json', function(data) { 
     $('#release_tester_tokens').autocomplete({ 
      source: data.list, 
      multiple: true 
     }); 
    }); 
}); 
+0

हाय डैफ़, मुझे जवाब देने के लिए बहुत बहुत धन्यवाद। मैं दृश्य कोड के माध्यम से स्रोत चर पारित कर रहा हूं:: जावास्क्रिप्ट नाम = # {रिलीज.user_names.to_json} – ramya

+0

अपने विचारों में ऐसी चीज़ें न करें, इसे सभी जेएस फ़ाइल में रखने का प्रयास करें। क्या आप जावास्क्रिप्ट व्यू रेंडरर का उपयोग कर रहे हैं? – Daff

+0

हाय डैफ़, मेरे पास मेरे नियंत्रक में जावास्क्रिप्ट व्यू रेंडरर @@ user_names || = User.all.map (&: name) है। answer_to do | प्रारूप | format.html # new.html.erb format.xml {प्रस्तुत करना: एक्सएमएल => @release} format.json {प्रस्तुत करना: json => {: डेटा => @@ USER_NAMES}} अंत चूंकि यह नहीं था ' मेरे लिए काम नहीं करता मैं बाद की विधि के लिए चला गया। – ramya

संबंधित मुद्दे