سؤال

أود أن أعرف ما إذا كان من الممكن التنفيذ الإكمال التلقائي على نموذج البحث الذي هو الاستعلام عن دليل LDAP.

أقوم بإنشاء عنصر واجهة مستخدم صغيرة تتيح للمستخدمين البحث عن أشخاص في دليل LDAP ثم عرض معلومات مثل رقم الهاتف وما إلى ذلك.

هناك الكثير من الأشخاص في الدليل ، لذلك سيكون من الجيد مساعدة المستخدمين من خلال إكمال النموذج وفقًا لما كتبوه حتى الآن.

إنه في الواقع إلى حد كبير ماذا تفعل jQuery UI مع الإكمال التلقائي

هل يجب علي طلب دليل LDAP مباشرة في كل مرة يضرب المستخدم مفتاحًا؟ أو ربما يجب علي ذاكرة التخزين المؤقت (محليًا أو على الخادم)؟

شكرا لمساعدتك

هل كانت مفيدة؟

المحلول

يمكنك بالتأكيد إجراء بحث LDAP باستخدام مرشح بطاقة Wild مثل (LiveName = E*). تم تحسين LDAP لعمليات البحث في الدليل ، وعادة ما تكون تستخدم النسخ المتماثلة فقط ، يمكن أن يتوسع هذا جيدًا.

إذا كنت تواجه مشكلات في السعة ، فإنني أوصيك بإجراء عملية قائمة واحدة وتخزين النتائج. ستكون استراتيجية التخزين المؤقت المفضلة لدي على جانب الخادم ، لأن ذلك من شأنه أن يقلل من الحمل على الخادم الخاص بك.

نصائح أخرى

بالتأكيد يمكنك ذلك ، ولكن بسبب الرحلة المستديرة للطلب ، حتى مع أسرع خوادم LDAP ، سوف تفعل ذلك يريد لاستخدام مستمع حدث "تأخر المراقب" في حقل البحث. هذا يعني أن طلب البحث لن يذهب فورًا على كل مفاتيح ، ولكن فقط بعد أن يقوم المستخدم بتكوين بعض الأحرف والتوقف مؤقتًا لفترة من الوقت.

أعتقد أن jQuery UI تقوم بالفعل بتنفيذ مراقب تأخر لأشياءه الإكمال التلقائي ، وكذلك عنصر التحكم التلقائي "ScriptAcoub".

PS التخزين المؤقت لجميع المستخدمين في الدليل محليًا في JavaScript ولن يعمل البحث المحلي حقًا لأكثر من مئات المستخدمين ، IMHO.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top