के साथ jQuery यूआई स्वत: पूर्ण श्रेणियां मैं दस्तावेज में श्रेणियों के उदाहरण के आधार पर jQuery UI Autocomplete को कार्यान्वित कर रहा हूं। मैं श्रेणियों के शीर्षलेख में परिणामों की संख्या जोड़ना चाहता हूं, इसलिए "उत्पाद" प्रदर्शित करने के बजाय यह "उत्पाद (3)" प्रदर्शित करता है। मुझे पता है कि _renderMenu फ़ंक्शन को उदाहरण से संशोधित करने की आवश्यकता है, लेकिन मुझे यह समझने में समस्या हो रही है कि इसे कैसे संशोधित किया जा सकता है। मुझे सही रास्ते से शुरू करने में कोई मदद की सराहना की जाएगी।गिनती तंत्र
यहाँ से jQuery यूआई स्वत: पूर्ण श्रेणियाँ उदाहरण कोड है डेमो:
<script>
$.widget("custom.catcomplete", $.ui.autocomplete, {
_renderMenu: function(ul, items) {
var self = this,
currentCategory = "";
$.each(items, function(index, item) {
if (item.category != currentCategory) {
ul.append("<li class='ui-autocomplete-category'>" + item.category + "</li>");
currentCategory = item.category;
}
self._renderItem(ul, item);
});
}
});
</script>
<script>
$(function() {
var data = [
{ label: "anders", category: "" },
{ label: "andreas", category: "" },
{ label: "antal", category: "" },
{ label: "annhhx10", category: "Products" },
{ label: "annk K12", category: "Products" },
{ label: "annttop C13", category: "Products" },
{ label: "anders andersson", category: "People" },
{ label: "andreas andersson", category: "People" },
{ label: "andreas johnson", category: "People" }
];
$("#search").catcomplete({
delay: 0,
source: data
});
});
</script>
<div class="demo">
<label for="search">Search: </label>
<input id="search" />
</div>
मुझे लगता है कि jQuery यूआई उदाहरण के साथ एक समस्या यह है श्रेणी के द्वारा भी बांटा जा करने के लिए है कि सूची में आइटम्स, अन्यथा श्रेणियों को दोहराएँ। उदाहरण के लिए, यदि आप डेटा सरणी के अंत में एक और उत्पाद जोड़ते हैं, तो आप पहली पीपुल्स श्रेणी के बाद दूसरी उत्पाद श्रेणी के साथ समाप्त हो जाएंगे। – j08691
मैं श्रेणी समूह के साथ इस मुद्दे पर सहमत हूं। परिणामों के माध्यम से पुनरावृत्त करने का एक तरीका होना चाहिए, उन्हें श्रेणी से अलग सरणी में समूहित करना होगा, फिर उस सरणी के आधार पर परिणाम सूची आउटपुट करना होगा। – lukemcd