ویژگی تصویر

رویداد oninvalid در JavaScript

  /  جاوا اسکریپت   /  رویداد oninvalid در جاوا اسکریپت
جاوااسکریپت - JavaScript

در این بخش به بررسی رویداد oninvalid در جاوا اسکریپت می پردازیم، رویدادهای جاوا اسکریپت یکی از مهم‌ترین ابزارهایی هستند که به توسعه‌دهندگان وب کمک می‌کنند تا به تعاملات کاربر با صفحات وب پاسخ دهند. این رویدادها می‌توانند برای مدیریت انواع فعالیت‌ها مانند کلیک‌ها، تغییرات ورودی‌ها و حتی اعتبارسنجی فرم‌ها مورد استفاده قرار گیرند. یکی از رویدادهای بسیار مهم در فرم‌های HTML، رویداد oninvalid است که به توسعه‌دهندگان امکان می‌دهد تا هنگامی که یک ورودی فرم نادرست است یا به درستی پر نشده است، واکنش مناسبی نشان دهند.

هدف اصلی استفاده از رویداد oninvalid ایجاد یک تجربه کاربری بهتر است. با استفاده از این رویداد، می‌توانیم از وقوع خطاهای پرکردن فرم جلوگیری کنیم و کاربر را به‌طور مستقیم به مشکلات موجود راهنمایی کنیم. برای مثال، اگر کاربری فرمی را بدون پر کردن صحیح فیلدهای اجباری ارسال کند، با استفاده از oninvalid می‌توان پیغامی نمایان کرد که کاربر را از اشتباه آگاه سازد.

رویداد oninvalid چیست؟

رویداد oninvalid یکی از رویدادهای فرم در جاوا اسکریپت است که هنگامی رخ می‌دهد که داده‌های وارد شده در یک فیلد فرم با شرایط اعتبارسنجی مورد نیاز هماهنگ نباشد. در HTML5، ما می‌توانیم برای هر عنصر فرم مانند <input> یا <textarea> محدودیت‌هایی اعمال کنیم، مثل اجباری بودن یک فیلد، تعیین حداقل یا حداکثر کاراکترها و یا فرمت مشخصی برای وارد کردن داده‌ها (مانند ایمیل). زمانی که کاربر تلاش می‌کند فرمی با داده‌های نامعتبر ارسال کند، این رویداد به‌طور خودکار فعال می‌شود.

رویداد oninvalid عمدتاً در فرم‌هایی که نیاز به اعتبارسنجی داده‌ها دارند کاربرد دارد. با فعال شدن این رویداد، می‌توانیم با استفاده از جاوا اسکریپت پیغام‌های خطا را نمایش دهیم یا به کاربر راهنمایی‌های لازم را ارائه کنیم.

مثال ساده از رویداد oninvalid:

تماشا در حالت تمام صفحه

در این مثال، فیلد ایمیل با استفاده از ویژگی HTML5 required به‌عنوان یک فیلد ضروری تنظیم شده است. اگر کاربر تلاش کند فرم را بدون وارد کردن ایمیل ارسال کند، مرورگر به‌طور خودکار پیغامی برای کاربر نمایش می‌دهد. اما با استفاده از oninvalid، ما می‌توانیم پیغام‌های سفارشی ایجاد کنیم.

کاربردهای اصلی oninvalid

۱. اعتبارسنجی ورودی‌های کاربر

یکی از کاربردهای اصلی رویداد oninvalid اعتبارسنجی داده‌هایی است که توسط کاربر در فرم‌ها وارد می‌شود. برای مثال، می‌توانید مطمئن شوید که فیلدهای اجباری پر شده‌اند، یا اطلاعاتی مانند شماره تلفن یا ایمیل به‌درستی وارد شده‌اند.

در مثال زیر، رویداد oninvalid برای نمایش یک پیغام خطا سفارشی هنگامی که کاربر فرم را با یک فیلد نامعتبر ارسال می‌کند، استفاده می‌شود:

تماشا در حالت تمام صفحه

در این مثال، اگر شماره تلفن وارد شده با الگوی تعریف شده (pattern="\d{10}") مطابقت نداشته باشد، یک پیغام خطای سفارشی به‌جای پیغام پیش‌فرض مرورگر نمایش داده می‌شود.

۲. نمایش پیغام‌های خطای سفارشی

در حالت پیش‌فرض، مرورگرها پیغام‌های خطا را به زبان و قالبی که خودشان تعیین کرده‌اند، نمایش می‌دهند. این پیغام‌ها ممکن است همیشه به‌خوبی با نیازهای شما یا زبان کاربر سازگار نباشند. با استفاده از oninvalid، شما می‌توانید این پیغام‌ها را به‌طور کامل سفارشی کنید و به‌جای آن پیغامی که مناسب‌تر است نمایش دهید.

به‌عنوان مثال:

تماشا در حالت تمام صفحه

در اینجا، اگر کاربر سنی خارج از بازه‌ی ۱۸ تا ۹۹ وارد کند، پیغام خطای سفارشی نمایش داده می‌شود. همچنین از oninput استفاده شده تا به محض تصحیح خطا، پیغام خطا حذف شود.

۳. بهبود تجربه کاربری

رویداد oninvalid می‌تواند به بهبود تجربه کاربری کمک کند، زیرا به‌جای ارائه پیغام‌های خطای پیش‌فرض و خشک، توسعه‌دهندگان می‌توانند پیغام‌هایی متناسب با زبان و نوع کاربران خود ارائه دهند. برای مثال، در یک وب‌سایت ایرانی، بهتر است پیغام‌ها به زبان فارسی نمایش داده شوند و متناسب با نیازهای کاربران باشند.

افزودن راهنمایی‌ها و پیام‌های خطا که دقیقاً به کاربر می‌گوید چه اشتباهی رخ داده است، می‌تواند باعث کاهش نرخ خروج کاربر از فرم‌ها شود. در عین حال، کاربر احساس راحتی بیشتری خواهد داشت، زیرا راهنمایی‌های لازم برای رفع مشکلات در اختیار او قرار می‌گیرد.

ترکیب oninvalid با سایر رویدادهای جاوا اسکریپت

۱. استفاده از رویداد onsubmit همراه با oninvalid

رویداد oninvalid معمولاً زمانی به‌خوبی عمل می‌کند که با دیگر رویدادهای جاوا اسکریپت مانند onsubmit ترکیب شود. به‌عنوان مثال، می‌توانید از oninvalid برای نمایش پیغام‌های خطا استفاده کرده و از onsubmit برای مدیریت رفتار کلی فرم در هنگام ارسال داده‌ها بهره ببرید.

مثال:

تماشا در حالت تمام صفحه

در این مثال، هنگام رخ دادن رویداد onsubmit، تابع validateForm فراخوانی می‌شود که می‌تواند بررسی‌های بیشتری را روی فرم انجام دهد. این ترکیب باعث می‌شود تا توسعه‌دهندگان کنترل کامل بر روی فرآیند ارسال و اعتبارسنجی داده‌ها داشته باشند.

۲. ترکیب oninput با oninvalid برای بازخورد لحظه‌ای

استفاده از رویداد oninput به همراه oninvalid به شما امکان می‌دهد تا به محض اینکه کاربر خطایی را تصحیح کرد، پیغام خطا مخفی شود و بازخورد لحظه‌ای به کاربر ارائه شود.

<input type="text" id="name" name="name" required
oninvalid="this.setCustomValidity('لطفاً نام خود را وارد کنید.')"
oninput="setCustomValidity('')">

در اینجا، با تصحیح فیلد ورودی توسط کاربر، پیام خطا به‌طور خودکار پاک می‌شود، که این روش می‌تواند باعث شود کاربران به راحتی و بدون اتلاف وقت فرم‌ها را پر کنند.

رویداد oninvalid یکی از ابزارهای قدرتمند جاوا اسکریپت برای مدیریت و اعتبارسنجی فرم‌ها است که با ترکیب آن با دیگر رویدادها و ویژگی‌ها، می‌توان تجربه کاربری بهتری ایجاد کرد. با استفاده از این رویداد می‌توانید خطاهای ورودی را به‌صورت دقیق‌تر و کاربرپسندتر مدیریت کنید. همچنین این رویداد به شما اجازه می‌دهد که پیغام‌های خطای سفارشی نمایش دهید و به این ترتیب، فرآیند پر کردن فرم‌ها برای کاربران راحت‌تر و بدون سردرگمی انجام شود.

منابع:

آیا این مطلب برای شما مفید بود ؟

خیر
بله
بنر تبلیغاتی ج