یک صفحهٔ وب ساده بسازید که با کلیک روی یک دکمه یک CustomEvent به نام "formSubmitted" ایجاد و dispatch کند و یک شنونده بنویسید که اطلاعات ارسالشده را در کنسول یا داخل یک المان نمایش دهد.
2.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:30 0.0
برای حل این مسئله از JavaScript و API استاندارد CustomEvent استفاده کنید: وقتی کاربر روی دکمه کلیک میکند، یک شیء new CustomEvent('formSubmitted', { detail: { /* دادهها */ }, bubbles: true, cancelable: true }) بسازید و با متد dispatchEvent روی المان مناسب (مثلاً document یا یک کانتینر) ارسال کنید. سپس با addEventListener برای همان نام رویداد یک listener ثبت کنید که از event.detail برای خواندن دادهها استفاده کند و آنها را در کنسول یا DOM نشان دهد؛ نکات مفید: از bubbles استفاده کنید تا رویداد به بالا منتشر شود، از cancelable اگر لازم است جلوگیری از رفتار پیشفرض، و برای اشکالزدایی console.log و حذف شنونده با removeEventListener را امتحان کنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای اطمینان از کارکرد درست، روی دکمه کلیک کنید و به listener مقداردهی کنید تا event.detail را در console ببینید. خوب است که از bubbles: true استفاده کنید تا رویداد به بالا propagate کند و بتوانید در کانتینرهای بالاتر هم آن را شنود کنید. اگر لازم بود رفتار پیشفرض فرم را منع کنید، از cancelable: true و event.preventDefault استفاده کنید. فراموش نکنید با removeEventListener زمانی که لازم است، از نشت حافظه جلوگیری کنید. همچنین میتوانید دادههای detail را به صورت آبجکت ساده یا JSON بارگزاری کنید.
گزارش