امید امرایی
یک شنبه 13 مرداد 1387, 22:24 عصر
این کلاس (البته با مفهوم جاوا اسکریپتی) یک اسکریپت کاملا ساده با یک دستورالعمل ساده تره که بنده برای سایت خودم نوشته بودم و بهتر دیدم برای استفاده از تکنولوژی اِی جکس و دوستانی که با این قضیه یه خورده مشکل دارن در اختیار شما عزیزان قرار بدم.
گذشته از این استفاده از این کلاس می تونه بصورت چشم گیری به کاهش حجم اسکریپت های شما , خوانایی بهتر و اشکال زدایی راحت تر کمک کنه .
روش استفاده از کلاس :
1- ابتدا اسکریپت رو به سایت خودتون import کنید : برای این کار می تونید فایل رو از این آدرس (http://www.kassit.com/RemoteScripts/XHRConn.zip) دانلود کنید و از سیستم محلی خودتون import کنید و یا از سرور کاسیت بگیرید با قراردادن
<script type="text/javascript" language="JavaScript" src="http://www.kassit.com/RemoteScripts/XHRConn.js"></script>
در تگ هد اونو import کنید . مزیت روش دوم اینه که بنده برای راحتتر شدن دوستان این اسکریپت رو آپدیت , ارتقا رفع اشکال می کنم و هر چند وقت یک بار برای دانلود می زارم با این روش دیگه نیازی به دانلود و آپدیت مجدد ندارید . از اونجایی که سورس این فایل رو هم به راحتی می شه دید از نظر امنیتی هم مشکلی ایجاد نخواهد کرد.
2- یک نمونه از کلاس رو ایجاد کنید:
var MyAjaxConn = new XHRConn();
3- اطلاعات رو از طریق تابع send ارسال کنید:
MyAjaxConn.send(Url , Data,
function(Response,CallerObject){
//این قسمت پس از بازگشت اطلاعات اجرا می شه
},
this
);
این تابع 4 آرگومان می گیره : send (core,data,Function,Object)
1) اولین آرگومان یعنی پارامتر core آدرس فایلی رو مشخص می کنه که اطلاعات به اون ارسال می شن
2) آرگومان دوم اطلاعاتی هستند که با متد post ارسال می شن
3) تابعی که بعد از بازگشت اطلاعات باید اجرا بشه
4) شی ای که تابع send رو فراخوانی کرده (اختیاری)
به تابعی که شما به تابع send ارسال می کنید به صورت اتوماتیک 2 آرگومان ارسال می شه :
1) Response که اطلاعات بازگشت داده شده رو به صورت یک شی String بر می گردونه و می تونید در تابعی که ارسال می کنید ازش استفاده کنید . درواقع هر پردازشی که می خواید روی اطلاعات بازگشتی انجام بدید باید روی Response که یک شی String هستش انجام بدید
2) اگر به تابع send در آرگومان چهارم شی ای رو ارسال کردید همون شی به پارامتر CallerObject ارسال می شه و می تونید ازش استفاده کنید .
یک مثال :
var MyAjaxConn = new XHRConn();
MyAjaxConn.send('getpassword.php' , '&username=admin',
function(Response,CallerObject){
CallerObject.password = Response; //ارسال شده اند Response به getpassword.php اطلاعات بازگشت داده شده توسط
},
this
);
گذشته از این استفاده از این کلاس می تونه بصورت چشم گیری به کاهش حجم اسکریپت های شما , خوانایی بهتر و اشکال زدایی راحت تر کمک کنه .
روش استفاده از کلاس :
1- ابتدا اسکریپت رو به سایت خودتون import کنید : برای این کار می تونید فایل رو از این آدرس (http://www.kassit.com/RemoteScripts/XHRConn.zip) دانلود کنید و از سیستم محلی خودتون import کنید و یا از سرور کاسیت بگیرید با قراردادن
<script type="text/javascript" language="JavaScript" src="http://www.kassit.com/RemoteScripts/XHRConn.js"></script>
در تگ هد اونو import کنید . مزیت روش دوم اینه که بنده برای راحتتر شدن دوستان این اسکریپت رو آپدیت , ارتقا رفع اشکال می کنم و هر چند وقت یک بار برای دانلود می زارم با این روش دیگه نیازی به دانلود و آپدیت مجدد ندارید . از اونجایی که سورس این فایل رو هم به راحتی می شه دید از نظر امنیتی هم مشکلی ایجاد نخواهد کرد.
2- یک نمونه از کلاس رو ایجاد کنید:
var MyAjaxConn = new XHRConn();
3- اطلاعات رو از طریق تابع send ارسال کنید:
MyAjaxConn.send(Url , Data,
function(Response,CallerObject){
//این قسمت پس از بازگشت اطلاعات اجرا می شه
},
this
);
این تابع 4 آرگومان می گیره : send (core,data,Function,Object)
1) اولین آرگومان یعنی پارامتر core آدرس فایلی رو مشخص می کنه که اطلاعات به اون ارسال می شن
2) آرگومان دوم اطلاعاتی هستند که با متد post ارسال می شن
3) تابعی که بعد از بازگشت اطلاعات باید اجرا بشه
4) شی ای که تابع send رو فراخوانی کرده (اختیاری)
به تابعی که شما به تابع send ارسال می کنید به صورت اتوماتیک 2 آرگومان ارسال می شه :
1) Response که اطلاعات بازگشت داده شده رو به صورت یک شی String بر می گردونه و می تونید در تابعی که ارسال می کنید ازش استفاده کنید . درواقع هر پردازشی که می خواید روی اطلاعات بازگشتی انجام بدید باید روی Response که یک شی String هستش انجام بدید
2) اگر به تابع send در آرگومان چهارم شی ای رو ارسال کردید همون شی به پارامتر CallerObject ارسال می شه و می تونید ازش استفاده کنید .
یک مثال :
var MyAjaxConn = new XHRConn();
MyAjaxConn.send('getpassword.php' , '&username=admin',
function(Response,CallerObject){
CallerObject.password = Response; //ارسال شده اند Response به getpassword.php اطلاعات بازگشت داده شده توسط
},
this
);