View Full Version : مشکل ادغام کردن CSS و JavaScript و postback انجام شده در UpdatePanel
mahdi.violin
چهارشنبه 26 مرداد 1390, 18:06 عصر
سلام / من یه مشکلی دارم که الان دقیقا توضیح می دم ، لطفا اگر کسی می دونه پاسخ بده ، مرسی
من یک DIV دارم که به عنوان دکمه ازش استفاده می کنم
یک div دیگه دارم که داخل آن شی GridView گذاشتم و postback رو true کردم (GridView داخل یک UpdatePanel هست)
اومدم div دومی رو display: none ست کردم
توی قسمت جاوا اسکریپت گرفتم اگر روی div اولی کلیک کرد div پایینش رو نشون بده با دستور display:block
حالا زمانی که Postback اتفاق میفته ، div مخفی میشه یعنی دستور display: none دوباره خونده میشه و به حالت اول برمیگرده ، حالا می خواستم ببینم میشه کاری کرد که این اتفاق نیفته ؟
hamidre13
شنبه 29 مرداد 1390, 02:36 صبح
دوست عزیز میتونی توسط شی کوکی جاوا اسکریپت با فشرده شدن دکمه یه دونه کوکی ست کنی و در هر بار لود صفحه اول این کوکی رو بخونی و بر اساس اون دیسپلی دکمه رو ست کنی!
mahdi.violin
شنبه 29 مرداد 1390, 12:25 عصر
نه با کوکی نمی خوام این کار رو انجام بدم ، مشکل اینجاس که من از multiview استفاده می کنم ، multiview خاصیتی داره اینکه هر view که در حال اجرا هست داره کدش اجرا میشه ، به خاطر همین زمانی که از یک view به view دیگه میرم css ها دوباره از اول خونده میشن
MiladSe7en
یک شنبه 30 مرداد 1390, 10:39 صبح
سلام
میتونی Div هات رو Runat server کنی. بعد بیای برای Div اولی Attribute جهت کلیک کردن تعریف کنی و همچنین برای Div دومی بیای توی شرط !IsPostBack بنویسی Div.Style ["display"] = "none"
mpmsoft
دوشنبه 31 مرداد 1390, 15:05 عصر
این مشکل به دلیل اولویت اجرای دستور به سمت سرور هست
ظاهرا شما می خواهید قبل از اجرای UpdatePanel شیعی را نمایش داده و در انتها نیز آنرا ببندید و حتما می خواهید برای جلوه بیشتر از حالات گرافیکی Jquery استفاده کنید
برای این کار ابتدا کد زیر رو به صفحه اضافه کن و بعد توسط جاوا اسکریپت دو تابع بنویس یکی برای شروع کار UpdatePanel و یکی در زمان خاتمه کار
Sys.WebForms.PageRequestManager.getInstance().add_ beginRequest(
function(sender, e) {
//isolate the UpdatePanel which caused this postback
if (e.get_postBackElement().id == ""<%= UpdatePanel.ClientID %>") {
//do some loading animation on the update panel
}
});
Sys.WebForms.PageRequestManager.getInstance().add_ endRequest(
function(sender, e) {
//find which UpdatePanel fired the original postback and
//turn off any animation
});
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.