• اعتبار سنجی فرم جاوا اسکریپت تایید تکمیل فرم با استفاده از جاوا اسکریپت

    0

    من یک درخواست متقاطع آژاکس به صفحه php خود در سرور انجام می دهم. من در حال ارسال فرمی از html از طریق ajax به صفحه php خود در سرور هستم. مشکلات اعتبار سنجی سمت مشتری.

    من نمی دانم چگونه می توانم قبل از ارسال فرم اعتبار سنجی سمت مشتری را انجام دهم.

    فرم HTMLفرم استاندارد، قرار دادن فیلدهای ورودی: نام، نام خانوادگی، پیام ... فرم HTML من، سمت مشتری:


    روشی که برای فراخوانی تابع از طریق رویداد onsubmit استفاده کردیم، مستلزم بازگشت یکی از موارد زیر به عنوان نتیجه تابع است. بولین ها: درست یا غلط. و بسته به این مقدار، فرم یا ارسال می شود یا خیر.

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


    < script language = "javascript" >


    همانطور که می بینید، تابع اعتبارسنجی از دو بلوک یکسان تشکیل شده است که فقط در نام فیلد مورد تایید تفاوت دارند. بیایید هر خط را در این بلوک ها نظر دهیم:

    ابتدا بررسی می کنیم که این فیلد خالی باشد. و اگر چنین است، پس
    نمایش یک پیام خطا با استفاده از تابع alert() داخلی. پس از بستن پنجره توسط کاربر، ما
    بیایید از متد ()focus استفاده کنیم و مکان نما را به قسمت اشتباه منتقل کنیم. و در نهایت
    با تنظیم پرچم موفقیت بر روی false از تابع خارج شوید.
    اگر فیلد علامت‌گذاری شده خالی نبود، بلوک مربوطه به سادگی رد می‌شود. اگر تمام بلوک‌های چک نادیده گرفته شوند، تابع در نتیجه true برمی‌گرداند که نشان‌دهنده یک بررسی موفق است.

    عملکرد تأیید همه کاره

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

    اول از همه، یک آرایه ایجاد می کنیم که در آن نام تمام فیلدهایی که نیاز به اعتبارسنجی دارند را فهرست می کنیم:

    مورد نیاز = آرایه جدید ("نام"، "ایمیل");

    این رویکرد به ما این امکان را می دهد که به راحتی لیست فیلدهای مورد نیاز را بدون تغییر مستقیم کد خود تابع اضافه و اصلاح کنیم.

    علاوه بر آرایه بالا، آرایه دیگری اضافه می کنیم که حاوی متن خطا برای یک فیلد خاص است:

    Required_show = آرایه جدید ("نام شما"، "آدرس ایمیل");

    این به ما امکان می دهد آزادانه متن خطا را تغییر دهیم و از زبان روسی به درستی استفاده کنیم و به عبارات غیرقابل هضم مانند "نام وارد نشده است" بسنده نکنیم.

    با آرایه ای از فیلدهای مورد نیاز، کل اعتبارسنجی را می توان در یک حلقه انجام داد. در اینجا تابع اعتبار سنجی اصلاح شده به نظر می رسد:


    < script language = "javascript" >


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

    در اینجا، به طور کلی، این همه است. این تابع کاملاً جهانی است و با حداقل تنظیمات (در واقع محتویات دو آرایه) را می توان با هر شکلی تطبیق داد.

    بازگشت