PDA

View Full Version : مشکل در استفاده از لودینگ برای صفحه سایت



mostafa_tak2000
جمعه 29 دی 1391, 15:01 عصر
سلام دوستان
من به یه مشکل برخورد کردم لطف کنید راهنمایی و کمکم کنید
من یه فرم دارم با دوتا فیلد و یک دکمه برای بررسی . مثلا کاربر باید در فیلد اولی کد شناسایی ودر فیلد دوم تصویر امنیتی را وارد کند و سپس دکمه بررسی را فشار دهد . من برای دو فیلد از اعتبار سنجی های validator استفاده کردم که نباید تکس باکها خالی باشد و گروه آنهارا هم با دکمه بررسی یکی دادم . حال اگر یکی از تکس باکسها خالی باشد وقتی دکمه بررسی را فشار میدهید علامت ستاره قرمز کنار تکس باکس نشان داده می شود.تا اینجا هیچ مشکلی تو برنامه نیست . ولی من برای انکه وقتی کاربر دکمه بررسی را فشار داد تا حصول نتیجه بررسی تصویر لوگین کمی صبرکنید نمایش داده میشود. مشکل اینجاست که وقتی من خاصیت OnClientClick را به نمایش لودینگ وصل میکنم اگر تکسباکسی خالی باشد و کاربر دکمه بررسی را فشار دهد تصویر لوگین لطفا کمی صبر کنید همینطوری نمایش داده میشه و هیچ اتفاقی نمیفته تا صفحه را رفرش کنید. ولی اگر تکسباکسها خالی نباشند کد بدرستی کارمیکنه و مشکلی نیست یع نی تا زمان دریافت نتیجه بررسی تصویر لوگین نمایش داده میشه و بعد از آن از صفحه پاک میشه.
پس مشکل من اینجاست که میخوام اگر اعتبار سنجی تکسباکسها درست بود خاصیت OnClientClick اجرا بشه.
با تشکر از دوستان

website.expert
جمعه 29 دی 1391, 16:43 عصر
با سلام،
ببخشید من دقیقاً متوجه منظورتون نمیشم.
اگه میتونید یه نمونه بذارید که اصلاح کنیم.

malloc
جمعه 29 دی 1391, 17:37 عصر
onclientclick چرا؟؟؟
خوب یه updateprogress بزار توی اون هم یه ایمیج gif بزار و وصلش کن به updatepanel .

morteza_mokhtari
جمعه 29 دی 1391, 21:41 عصر
سلام دوست عزیز شما باید برای اینکار از jquery استفاده کنید با استفاده از کد زیر میتونید تشخیص بدید که validator صحیح هستش یا نه.بعد اگه صحیح بود میتونید مثلا یک تابع جاوااسکریپت دیگه صدا بزنید که نیازی به onclientclick هم دیگه نباشه به جایی ShowAlertMessage شما میتونید اون تابعی رو که میخواهید صدا بزنید البته با val.isvalid == true


function CheckValidation() {


var val = $find("<%=pollsValidate.ClientID%>");
if (val.isvalid == false) {
ShowAlertMessage("خطا", "", "لطفا یکی از گزینه های نظرسنجی را انتخاب نمایید.");
return false;
}
}