آموزش ایجاد فیلد انتخاب استان و شهر به صورت Ajax + لیست شهرها

تبلیغات
کانال تلگرام فتولیا

یکی از کارهایی که معمولا در پروژه ها انجام میشه ایجاد فرم ها هست . برای ثبت نام کاربر، ثبت کالا و … . در این فرم ها یکی از فیلدهایی که خیلی مورد استفاده قرار می گیره معمولا فیلدهای انتخاب استان و سپس شهر ، هستند .

به این صورت که لیست استان ها ابتدا انتخاب میشه و بعد لیست شهرهای استان انتخاب شده، در فیلد دیگر به صورت ایجکس بارگذاری میشه . مزیت استفاده از ایجکس سادگی فرم و سرعت لود زیاد (چون نیاز نیست همه شهرها از اول داخل فرم باشند) است.

در این مقاله کدی که خودم در پروژه ها استفاده می کنم براتون قرار میدم امیدوارم مورد استفاده تون قرار بگیره . اگر اشکال یا موردی بود لطفا در بخش نظرات بگید.

 

کد HTML فیلد انتخاب استان

این کد همانطور که می بینید یک خصیصه خاص بنام data-action داره . هدف از گذاشتن این خصیصه این هست که وقتی استان توسط کاربر انتخاب شد ،id یا شماره منحصر به فرد استان انتخاب شده، بوسیله ایجکس به آدرس داخل این خصیصه (که اینجا http://localhost/fotolia/getCities.php هست) ارسال خواهد شد و شهرهای استان توسط این آدرس به صورت Json برگشت داده خواهند شد.

در همین رابطه :   برنامه نویسی سیستم ساده ثبت نظرات با PHP/MySQL و jQuery به صورت AJAX

 

کد HTML فیلد انتخاب شهر

این کد نیز ساده است و یک خصیصه id مهم دارد بنام city که بعد از گرفتن لیست شهرها که در بالا گفته شد ، بوسیله این id ، شهرها رو با JavaScript به فیلد اضافه می کنیم.

 

کد JavaScript مورد نیاز

 

در همین رابطه :   ارسال آسان Push Notification به مرورگر با Push.js

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

دانلود فایل SQL استان ها و شهرهای ایران

One Comment

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

More in Ajax, JavaScript
آموزش شروع کار با React.js

React.js یک کتابخانه JavaScript منعطف و جزء محور (Component-Based) است که برای ایجاد رابط های کاربری تعاملی استفاده می شود. این...

Close