|
Ajax سرواژهء
Asynchronous JavaScript And XML است که میشود
جاوا- اسکریپت و XML ناهمگام! در مورد Ajax تا
بخواهید کتاب هست و وب سایت اما من قصد دارم بدون
درگیر شدن با جزئیات یک برنامه کوچک را با شما
سهیم شوم:
تاریخچه: ما یک فرم وب داشتیم که در آن باید در
فیلد اول کد شعبه را وارد میکردیم و در فیلد دوم
نام شعبه را مطابق شکل زیر

روزی یکی از همکاران گرانقدر فرمودند کاری بکنید
که پس از وارد کردن کد شعبه نام شعبه و آدرس آن
ظاهر شود و طبیعتاً این کار باید بدون refresh شدن
صفحه بانجام رسد. من هم گفتم این کار مثال کلاسیک
Ajax است و آن را پیاده سازی کردم.
طرح مسئله:
فرض کنید یک جدول داریم دارای سه ستون 1- کد شعبه
2- نام شعبه 3- آدرس شعبه مطابق شکل زیر

هدف آنست که پس از وارد کردن کد سه رقمی شعبه در
فرم وب بدون آنکه صفحه بارگزاری مجدد (refresh)
گردد نام و آدرس شعبه ظاهر گردد.
اجزای پروژه:
این پروژه برای سادگی، بسیار خلاصه شده است 3 جزء
اصلی آن عبارتند از :
1- پایگاه داده که برای سهولت یک فایل Access
دارای یک جدول سه ستونی میباشد اطلاعات این جدول
شامل کد، نام و آدرس برخی شعب تهران بانک پاسارگاد
است.
2- یک فایل html شامل میانای کاربر (user
interface) یا همان رابط کاربر که در آن کدهای
جاوا اسکریپت قرار داده شده.
3- یک فایل ASPX برای پردازش سمت سرور شامل
دستیابی به اطلاعات و ایجاد خروجی مناسب برای صفحه
html .
فایل پایگاه داده:
یک فایل access است که در آنرا در فلدر
/_private/db با نام DBBranch.mdb ذخیره کردهایم
یعنی در root سایت معمولا یک فلدر _private هست که
معمولا مجوز write را به آن میدهند من بطور کاملا
سنتی و دلبخواه فایلهای پایگاه دادهای را در آن
قرار میدهم البته در یک زیرفلدر مشخص بنام db .
فایل html به نام Ajax.htm در root وب سایت
ذخیره میشود. در این فایل که رابط یا میانای
کاربر است دو فیلد متنی قرار میدهیم:
1- فیلد اول ورودی است
بشرح زیر:
<input name="BrCodeIn" size="9"
onkeyup="Trigger1();" maxlength="3"
style="float: right" >
این فیلد همانطور که میبینید حداکثر سه کاراکتر
میگیرد و به محض آنکه دست شما از روی کلید
برداشته شود تابع Trigger1 را فراخوانی میکند.
2- فیلد دوم خروجی است
بشرح زیر:
<input name="OutPut" size="70" dir="rtl"
readonly="true" style="float: right">
نکته آن readonly بودن آنست که آنرا به یک فیلد
خروجی شبیه کرده است.
دو تابع اصلی در فایل Ajax.htm وجود دارد
یکی همان تابع Trigger1 است که وقتی کلیدی
زده می شود فراخوانی میشود و دیگری تابع
ajaxFunction است که کد آن بشرح زیر است:
|