PDA

View Full Version : برقراری ارتباط بین دو وب فرم با جاوا اسکریپت



sh_mohsen taki
پنج شنبه 03 آذر 1384, 17:28 عصر
با سلام من میخوام در فرم بچه اطلاعاتی از فرم پدر رو تغییر بدم فرقی نمیکنه که فرم بچه بسته بشه یا نه ولی حتما باید فرم پدر بدون به روز رسانی تغییر کنه
لطفا قبل از پاسخ به موارد زیر توجه کنید
1- اولی راه استفاده از ShowModalDialog است ولی چون احتیاج به روز رسانی در فرم بچه برای اتصال به بانک ضروری است نمی توان از این روش استفاده کرد چون یک فرم دیگر open خواهد شد
2- استفاده از window.open این را هم به علت اینکه بعد از باز شدن فرم دستورات بعدی فرم پدر اجرا می شوند و دیگر نمی توانیم به درج اطلاعات در فرم پدر بدون به روز رسانی بپردازیم غیر قابل استفاده است مگر اینکه چیزی که من نمیدونم به اوون اضافه بشه
3- استفاده از session و دیگر موارد که آنهم احتیاج به رفرش دارد
نکته- من نمی گویم نمی شود از این راه ها استفاده کرد فقط میگم من این راه ها رو امتحان کردم و طبق دلایلی که گفتم غیر قابل استفاده برای من است اگر گزینه یا دستوری دارید که بتوان بدان وسیله به رفع عیب روش های بالا پرداخت ممنون میشم ذکر کنید یا اینکه اگه راه جدیدی به نظرتون میرسه دیگه بهتر

Behrouz_Rad
پنج شنبه 03 آذر 1384, 18:22 عصر
دوست عزیزم!

این تاپیک به 2 دلیل باید حذف شود:
1) این سوال را در تاپیک دیگری مطرح کرده بودید!
2) این سوال مربوط به این بخش نمی شود و باید در بخش جاوا اسکریپت مطرح کنید.

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


function insert_Value(s)
{

myParentForm = window.opener.document.forms[0];

if(myParentForm != null)
{
myParentForm[myTextBoxName].value = s;
self.close();
}

}


با استفاده از متد open کلاس window ، فرم فرزند خود را بر روی فرم پدر باز کنید و در روال کلیک یک دکمه ، تابع فوق را به شکل زیر فراخوانی کنید:


insert_Value('myValue');


در انتها، فرم فرزند با دستور self.close بسته خواهد شد.
چنانچه قصد باز گذاشتن آن را دارید، دستور فوق را حذف کنید.
موفق باشید.

sh_mohsen taki
پنج شنبه 03 آذر 1384, 18:30 عصر
با عرض سلام خدمت آقای راد
درمورد پاسخ به سئوال بسیار ممنونم
اما در مورد تاپیک قبلی باید بگویم منظورم از ایجاد آن چیز دیگری بود که در طی بحث های ایجاد شده تغییر مسیر داد و نه به مقصد اصلی نزدیک شد و نه به این موضوع لذا از شما معذرت خواسته و در صورت لزوم تاپیک قبلی را حذف نمایید
با تشکر

mehrdotnet
جمعه 04 آذر 1384, 13:58 عصر
بله من هم دقیقاً همین مشکل را داشتم و توی همین بخش مطرح کرده بودم و جوابهای جالبی نگرفتم.
از شما جناب راد بسیار ممنون با این کد کاملاً همونی که می خواستم شد.
تاپیک قبلی خودم توی این زمینه (شبیه سازی ShowDialog برای وب) رو هم که توی این بخش گذاشته بودم و منتقل شده بود به دست خودم حذف کردم تا درس عبرتی بشه واسه خودم و سایرین!!!!!