संपादित करें: मैं सैद्धांतिक संदर्भ बिंदु के एक प्रकार के रूप में यहाँ इस उत्तर छोड़ देंगे, लेकिन यह लग रहा है जैसे आप autocompleter answer :)
अस्वीकरण के लिए अधिक उपयोगी होने की संभावना है: हालांकि मैं गूगल के लिए काम (जो स्पष्ट रूप से विभिन्न यूआई में तत्वों को "सुझाव" है) मैंने इस क्षेत्र के आसपास के किसी भी कोड को नहीं देखा है, न ही क्लाइंट-साइड पहलू के बारे में किसी से भी बात की है।
सर्वर-साइड भाषा शायद यहां अप्रासंगिक है। क्लाइंट साइड पर AJAX आवश्यक महत्वपूर्ण बात है।
मेरा सुझाव है कि आपके पास लगभग 1 सेकंड का टाइमर है (एक मीठा स्थान खोजने के लिए प्रयोग) जो प्रत्येक बार जब उपयोगकर्ता टेक्स्टबॉक्स में कीस्ट्रोक में प्रवेश करता है और रद्द कर देता है तो उपयोगकर्ता टेक्स्टबॉक्स से दूर हो जाता है। अगर टाइमर आग लगती है, तो इसे एजेक्स अनुरोध को आग लगाना। AJAX अनुरोध में उपयोगकर्ता ने अब तक टाइप किया है। AJAX प्रतिक्रिया सुझावों और मूल अनुरोध पाठ की सूची होना चाहिए।
यदि, जब AJAX प्रतिक्रिया लौटाती है, तो टेक्स्टबॉक्स में टेक्स्ट अभी भी प्रतिक्रिया में फ़ील्ड जैसा होता है (यानी उपयोगकर्ता ने तब से टाइप नहीं किया है) और यदि टेक्स्टबॉक्स अभी भी केंद्रित है, तो ड्रॉपडाउन प्रदान करें। (चीजों के इस पक्ष को करने के लिए HTML comboboxes के बारे में सैकड़ों उदाहरण पृष्ठ होना चाहिए।)
सभी सर्वर को जांच करने और उचित रूप से प्रतिक्रिया को स्वरूपित करके AJAX अनुरोध का जवाब देना है - यह बहुत आसान है ग्राहक पक्ष!
आशा है कि मदद करता है - कोई नमूना कोड नहीं है, लेकिन मुझे संदेह है कि यह काफी शामिल है और मैं वास्तव में एक जावास्क्रिप्ट डेवलपर नहीं हूं।
स्रोत
2008-10-11 19:08:37