ورود

View Full Version : مشکل در onblur و autocomplete



IMANAZADI
پنج شنبه 20 آبان 1395, 09:26 صبح
سلام


دوستان من با جاوااسکریپت یک autocomplete درست کردم ولی واسه یه قسمتش مشکل دارم

یک لیست ul داریم که display : none هست

یک input داریم که وقتی کاربر شروع به تایپ میکنه (onKeyUp) لیست ul با توجه به تکست واسش باز میشه (display : block)

وقتی کاربر روی یکی از گزینه ها li کلیک میکنه متن li داخل input میشینه و ul مجددا display : none میشه

حالا یه مشکلی هست وقتی کاربر چیزی مینویسه ولی روی هیچ گزینه ای از li ها کلیک نمیکنه (onClick) و فوکوس از input به یک المنت دیگه داده میشه لیست (ul) باز میمونه (display : block) چون وقتی li کلیک میخوره ul خاصیت display:none میگیره

اومدم خاصیت onBlur تکس باکس رو تعریف کردم که ul -> display : none ; ولی یه مشکل دیگه پیش میاد اونم اینه حالا اگر کاربری بخواد روی یک li کلیک کنه قبل از انجام کلیک لیست بسته میشه چون تکس باکس فوکوس رو از دست میده و لیست رو میبنده


چطوری میشه این مشکل رو حل کرد

قبلش یه نکته ای بگم که کد فقط با جاوا اسکریپت هست نه جی کوئری

پس کد جی کوئری به دردم نمیخوره و اینم میدونه که میشه autocomplete رو با جی کوئری براحتی انجام داد ولی بنا به احتیاج فقط از جاوااسکریپت میتونم استفاده کنم

نکته دیگه اینکه بازم میدونم که میشه از تگ datalist هم استفاده کرد ولی بازم این گزینه منتفیه

اینا رو گفتم که جواب ها مرتبط باشن

ممنون

IMANAZADI
چهارشنبه 26 آبان 1395, 19:59 عصر
عزیزان من همچنان منتظر جواب شما هستم

akarempor
پنج شنبه 27 آبان 1395, 10:47 صبح
سلام
لطفا کد خودتون رو قرار بدید تا بهتر بشه نظر داد
فکر کنم با دستور if مشکلتون حل بشه ولی باز اگه کدتون رو بزارید بهتر میشه راهنمایی کرد.