PDA

View Full Version : اسکریپت سمت کلاینت textbox



مهدی فهمیده غلامی
شنبه 25 بهمن 1382, 08:29 صبح
کد زیر را برای web control ریز نوشته ام
TextBox1
در فایل codebehind
اما alert پیغام undefind را نمایش میده
TextBox1.Attributes.Add("onclick","alert(TextBox1.Text
علت چیه

Vahid_Nasiri
شنبه 25 بهمن 1382, 20:27 عصر
دلیل این است که شما هنوز مفهوم جاوا اسکریپت کلاینت ساید و ای اس پی دات نت سرور ساید را نمی دانید ( قصد توهین ندارم )
بعضی ها فکر می کنند asp.net ابتدای راه است. چند دوره این کلاس را برگزار کرده ام. خیلی ها ثبت نام می کنند و می گویند من حتی برنامه نویسی هم بلد نیستم! ....... ای هوار!

شما بهتر است ابتدا یک کتاب جاوا اسکریپت پیدا کنید و در آن با مفاهیم dom آشنا شوید. document object model
تا این موارد را ندانید من هر چقدر هم توضیح بدهم بازهم تاپیک باز می کنید که *قانع نشدم*!

مهدی فهمیده غلامی
یک شنبه 26 بهمن 1382, 07:25 صبح
جناب نصیری با تشکر از توضیحاتتون من فکر می کنم منظورم را بد بیان کرده ام چرا که من هم می دونم این کد چرا کار نمی کنه چون این دوتا اصلا به هم ربط ندارند و معلومه نمی شه در اسکریپت سمت CLIENT به یک وب کنترل سمت SERVER دسترسی داشت
من می خوام بدونم واقعا یه چنین کاری رو چطور می شه انجام داد من به این تکنیک احتیاج دارم؟؟؟؟؟

Abbas Arizi
یک شنبه 26 بهمن 1382, 11:13 صبح
قبلا هم گفته شده که کنترلهای سرور ساید ASP.NET برای نمایش در مرورگرها در نهایت به صورت یک یا مجموعه‌ای از تگهای استاندارد HTML درمیان. خب در مورد TextBox هم همینه. یعنی وقتی شما فرضا یک کنترل ASP.NET با نام TextBox1 دارید در مرورگر به این صورت نمایش داده میشه:

<input type="text" id="TextBox1">
خب حالا با بهره‌گیری از کدهای جاوا اسکریپت میشه هر بلایی رو سر این کنترل آورد.
مثال:
مشاهده متن TextBox در صورت کلیک روی آن به صورت یک پیغام:

TextBox1.Attributes.Add("OnClick", "alert(this.value);");

مشاهده متن همون تکست باکس در صورت کلیک روی یک Button:

Button1.Attributes.Add("OnClick", "alert(TextBox1.value);");
ملاحظه می‌کنید که این کارهایی که شما می‌خواهید به سادگی قابل انجامه و اصلا چیز پیچیده‌ای نیست.

ضمن اینکه کنترلهای Validator در ASP.NET نیز برای همین منظور طراحی شده‌اند و بسیاری از کارها با همین کنترلها به سادگی انجام میشه. اگه یه سر به پستهای قبلی بزنید آقای نصیری چند بار این نکته رو گوشزد کرده و لینکهای مفیدی ارائه داده‌اند.