viator
پنج شنبه 15 مهر 1395, 11:58 صبح
سلام به همه دوستان
من یک لیست از اطلاعات دارم که از طریق asp:Repeater در صفحه به نمایش گذاشتم...
به صورت زیر:
<asp:Repeater ID="Repeater5" runat="server" DataSourceID="SqlDataSource5" ViewStateMode="Disabled">
<ItemTemplate>
<li>
<a href="<%#"/"+Eval("InstituteEnName")%>" class="clearfix">
<img class="float-right" src="<%#"/InstLogo/"+Eval("LogoImageName")%>" border="0" width="100" height="100"/>
<div class="float-right">
<h3><%#Eval("InstituteFaName") %></h3>
<span class="special-stars-hotel special-stars-hotel-5">
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
</span>
<span><%#Eval("InstituteEnName") %></span>
<span>خیلی خوب</span>
<span>تعداد نقد و بررسی ها: 1</span>
<span>پیشنهاد شده توسط کاربران: 100%</span>
<input id="Hidden1" type="hidden" value="<%#Eval("InstituteID") %>"/>
</div>
</a>
</li>
</ItemTemplate>
</asp:Repeater>
حالا می خوام زمانی که روی هر مورد کلیک میشه وارد صفحه ای مثل: site.com/insname بشه و اطلاعات همون مورد رو نمایش بده. البته صفحه Institute.aspx قبلا طراحی شده..
سوال من اینجاست که چطور ID رو از این ریپیتر بگیرم و به صفحه جدید ببرم.
ID همون مورد آخر هست که در یک input مخفی قرار داره...
از طریق آدرس نمی خوام این کار انجام بشه چون همون طور که توی کد مشخص آدرس برای هر مورد فقط نام باید باشه...
ضمنا در مورد روتینگ آدرس هم اگر ممکنه بفرمایید که چه کار کنم به جای site.com/Institute.aspx در نوار آدرس site.com/insname دیده بشه..
من از طریق این دستور زیر:
Page.RouteData.Values["Name"]
تونستم مقدار نامی که توی آدرس ارسال کردم رو در صفحه جدید دریافت کنم
اما می خوام بدونم راهی هست که بدون استفاده از آدرس بتونم ID رو در صفحه جدید دریافت کنم...
البته Sesion هم نمیشه چون داخل ریپیتر فقط اقلام html میشه استفاده کرد و از دکمه و سایر کنرتل ها خبری نیست...
ممنون
من یک لیست از اطلاعات دارم که از طریق asp:Repeater در صفحه به نمایش گذاشتم...
به صورت زیر:
<asp:Repeater ID="Repeater5" runat="server" DataSourceID="SqlDataSource5" ViewStateMode="Disabled">
<ItemTemplate>
<li>
<a href="<%#"/"+Eval("InstituteEnName")%>" class="clearfix">
<img class="float-right" src="<%#"/InstLogo/"+Eval("LogoImageName")%>" border="0" width="100" height="100"/>
<div class="float-right">
<h3><%#Eval("InstituteFaName") %></h3>
<span class="special-stars-hotel special-stars-hotel-5">
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
<i class="fa fa-star"></i>
</span>
<span><%#Eval("InstituteEnName") %></span>
<span>خیلی خوب</span>
<span>تعداد نقد و بررسی ها: 1</span>
<span>پیشنهاد شده توسط کاربران: 100%</span>
<input id="Hidden1" type="hidden" value="<%#Eval("InstituteID") %>"/>
</div>
</a>
</li>
</ItemTemplate>
</asp:Repeater>
حالا می خوام زمانی که روی هر مورد کلیک میشه وارد صفحه ای مثل: site.com/insname بشه و اطلاعات همون مورد رو نمایش بده. البته صفحه Institute.aspx قبلا طراحی شده..
سوال من اینجاست که چطور ID رو از این ریپیتر بگیرم و به صفحه جدید ببرم.
ID همون مورد آخر هست که در یک input مخفی قرار داره...
از طریق آدرس نمی خوام این کار انجام بشه چون همون طور که توی کد مشخص آدرس برای هر مورد فقط نام باید باشه...
ضمنا در مورد روتینگ آدرس هم اگر ممکنه بفرمایید که چه کار کنم به جای site.com/Institute.aspx در نوار آدرس site.com/insname دیده بشه..
من از طریق این دستور زیر:
Page.RouteData.Values["Name"]
تونستم مقدار نامی که توی آدرس ارسال کردم رو در صفحه جدید دریافت کنم
اما می خوام بدونم راهی هست که بدون استفاده از آدرس بتونم ID رو در صفحه جدید دریافت کنم...
البته Sesion هم نمیشه چون داخل ریپیتر فقط اقلام html میشه استفاده کرد و از دکمه و سایر کنرتل ها خبری نیست...
ممنون