سلام
من به یک مشکل بزرگی برخوردم
اینه که میخوام موقع ثبت نام یک سری کد را در دیتابیس درج کنم اما اگر کاربر چندبار بر روی دکمه کلیک کنه
بعدا به مشکل میخوره
حالا میخوام با یکبار کلیک کل صفحه به حالت enable بره تا نتونه دوبار کلیک کنه
سلام
من به یک مشکل بزرگی برخوردم
اینه که میخوام موقع ثبت نام یک سری کد را در دیتابیس درج کنم اما اگر کاربر چندبار بر روی دکمه کلیک کنه
بعدا به مشکل میخوره
حالا میخوام با یکبار کلیک کل صفحه به حالت enable بره تا نتونه دوبار کلیک کنه
فکر کنم باید از onclientclick استفاده کنی و دکمه رو غیرفعال کنی
سلام دوست عزیز این کد رو به دکمت اضافه کن.
کد HTML:OnClientClick="if ((typeof(Page_ClientValidate) == 'function') && (Page_ClientValidate()==false)) { return false;} this.disabled=true; this.value ='در حال پردازش';"
یک همچین خظایی میده
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: CS1002: ; expected
Source Error:
Line 37: {Line 38: Line 39: OnClientClick="if ((typeof(Page_ClientValidate) == 'function') && (Page_ClientValidate()==false)) { return false;} this.disabled=true; this.value ='در حال پردازش';"Line 40: Line 41:
خطای بالایی که فهمیدم باید انتهای خط ؛ می ذاشتم
اما حالا این خطا رو میده
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: CS0103: The name 'OnClientClick' does not exist in the current context
Source Error:
Line 38: Line 39: Line 40: OnClientClick = "if ((typeof(Page_ClientValidate) == 'function') && (Page_ClientValidate()==false)) { return false;} this.disabled=true; this.value ='در حال پردازش';";Line 41: Line 42:
namespace خاصی می خواد؟
من این فهمیدم جاش کجاست و گذاشتم
موقعی ام که روی دکمه کلیک می کنی enable میشه
اما مشکل اینه که عملیات که توی رویداد کلیک نوشته شده را انجام نمیده
جواب چی شد>
سلام دوست عزیز
اگر از validtion استفاده نمیکنید این کد رو بزارین
این کد رو باید در قسمت html دکمه بزاریدکد HTML:OnClientClick="this.disabled = true; this.value = 'در حال پردازش اطلاعات ...';"
ببین من این توی دکمه که برای ثبت نام کاربر هست که از مال خود vs استفاده کردم دکمه ی continue میزام
اما با کلیک روی اون مینویسه در حال پردازش اما کارهای که توی رویداد کلیک دکمه گفتم را انجام نمیده
این کد رو بزن یه کد آخرش اضافه شده
1- این کد وقتی دستورات در حال پردازش باشه اجرا میشه که دکمه رو غیر فعال میکنهکد HTML:<asp:Button runat="server" ID="btnProcess" Text="پردازش" onclick="btnProcess_Click" OnClientClick="this.disabled = true; this.value = 'در حال پردازش اطلاعات ...';" UseSubmitBehavior="false" />
2- این کد هم وقتی که دکمه پردازشش تموم شده و فعال میشه دوبارهکد HTML:OnClientClick="this.disabled = true; this.value = 'در حال پردازش اطلاعات ...';"کد HTML:UseSubmitBehavior="false"
توی رویداد دکمه هم این رو بزار
protected void btnProcess_Click(object sender, EventArgs e)
{
// insert student in database
System.Threading.Thread.Sleep(2000);
lblMessage.Text = "پردازش اطلاعات به پایان رسید";
}