PDA

View Full Version : سوال: نوشتن Javascript در صفحه MasterPage



amir_sedghi5109
سه شنبه 14 آبان 1387, 11:06 صبح
با سلام
من یک صفحه MasterPage در ASP.NET دارم که می خوام توی این صفحه JavaScript بنویسم ولی کامپوننت های این صفحه را نمی شناسد

در یک صفحه معمولی در ASP.NET با کد JavaScript زیر می توانستیم به کامپوننت های صفحه(مثلا TextBox) دستیابی پیدا کنیم


txtidcountry=document.getElementById('txtidcountry ');



ولی اگر همین TextBox در صفحه ی MasterPage باشد Error زیر را می ده
'txtidcountry' is null or not an object

می خوام بدونم چه جوری به کامپوننت های موجود در MasterPage
از طریق JavaScript دستیابی داشته باشم.
خواهش می کنم کمک کنید. خیلی بهش احتیاج دارم.

m.hamidreza
سه شنبه 14 آبان 1387, 16:59 عصر
IDش تغییر میکنه! از این کد استفاده کن:


$get(<%=TextBox1.ClientID %>)

amir_sedghi5109
پنج شنبه 16 آبان 1387, 10:01 صبح
من عمل دستیابی به کامپوننت های asp.net را در تگ Script می نویسم.
از کد $get(<%=TextBox1.ClientID %>) هم استفاده کردم ولی موقعی که اسم کامپوننتمو را می نویسم (مثلا TextBox)، اصلا منوی باز شوندشو هم نمی یاره که گزینه ی ClientID را انتخاب کنم.
ولی همین کارو برای یک کامپوننت HTML امتحان کردم ، که اون را شناخت. ولی مشکل من دستیابی به کامپوننت های asp.net هست.

emad_67
پنج شنبه 16 آبان 1387, 10:34 صبح
شما یعنی کامپوننتت توی content page هست و بعد میخوای توی مستر پیج اونو فراخوانی کنی؟
اگر اینجوریه بهتره script رو توی همون content page قرار بدی. به وسیله RegisterClientScriptBlock و ...

m.hamidreza
پنج شنبه 16 آبان 1387, 19:30 عصر
من عمل دستیابی به کامپوننت های asp.net را در تگ Script می نویسم.
از کد $get(<%=TextBox1.ClientID %>) هم استفاده کردم ولی موقعی که اسم کامپوننتمو را می نویسم (مثلا TextBox)، اصلا منوی باز شوندشو هم نمی یاره که گزینه ی ClientID را انتخاب کنم.

شما اگه بعد از اجرا ViewSource رو بزنی میبینی که ID اون کنترلی که تو مسترپیج هست مثه Textbox دیگه Textbox1 نیست یه چیزی مثه ctl00_Textbox1 شده بخاطر همین با اون کد قابل تشخیص نیست. شما اگه اون آی دی تغییریافته رو بذاری جای همون TextbBox1 کار میکنه و دیگه نیازی به کد من نیست.

شما یعنی کامپوننتت توی content page هست و بعد میخوای توی مستر پیج اونو فراخوانی کنی؟

کنترل توی مسترپیج هست میخواد با جاوااسکریپت از توی یه صفحه ای که از اون مسترپیج به ارث برده شده به اون کنترل دسترسی داشته باشه.

amir_sedghi5109
شنبه 18 آبان 1387, 09:03 صبح
m.hamidreza جان یک دنیا ممنون