PDA

View Full Version : سوال: دسترسی به آبجکت <a> در کد



rezaei manesh
دوشنبه 08 شهریور 1389, 13:54 عصر
سلام من می خوام تو کد نویسی کلاس آبجکت <a> رو تغییر بدم اما نمی شه
در واقع من 2 تا <a> در صفحه دارم رو هر کدوم که کلیک شد باید رنگش سفید بشه و رنگ اون یکی آبی

Vahid_moghaddam
دوشنبه 08 شهریور 1389, 14:22 عصر
کلیک روی لینک، postback ایجاد نمی کنه و شما نمی تونید سمت سرور فقط با کلیک شدن روی لینک کاری انجام بدید.
روشی که در این مساله می تونید استفاده کنید استفاده از javascript هست.

vahid dot net
دوشنبه 08 شهریور 1389, 16:18 عصر
شما میتونید عبارت runat=server و یک id مثل 'A1' در تگ <a> قرار بدید تا قابلیت شناسایی تگ رو در codeBehind داشته باشید .



<a id="A1" href="#" runat="server" >Link1</a>
<a id="A2" href="#" runat="server" >Link2</a>


برای تغییر استایل از کد جاوای زیر استفاده کنید




function ChangeCss(element , newStyle)
{
document.getElementById(element).className = newStyle;
}
و در نهایت در code behind صفحه کد زیر رو قرار بدید .




protected void Page_Load(object sender, EventArgs e)
{
A1.Attributes.Add("onclick", string.Format("ChangeCss('{0}','style1');ChangeCss('{1}','style2' )", A2.ClientID, A1.ClientID));
A2.Attributes.Add("onclick", string.Format("ChangeCss('{0}','style2');ChangeCss('{1}','style1' )", A1.ClientID, A2.ClientID));
}
درضمن تعریف استایل های style1 و style2 هم فراموش نشه .