我创建了一个网页(page1.aspx),我在其中放置了一个Image map控件。在图像地图中,我放置了印度地图。当我点击一个区域时,它会将我导航到另一个页面(page2.aspx),其中包含有关该区域的信息。
我希望能够将我点击的区域的回发值传输到page2.aspx,以便我可以使用它来检索该特定区域的数据。
如何将回发值传输到第2页?
我是asp.net的新手,需要帮助。提前谢谢。
<asp:ImageMap ID="ImageMap1" runat="server" HotSpotMode="Navigate" ImageAlign="Middle" ImageUrl="~/Images/Jammu.jpg" OnClick="ImageMap1_Click">
<asp:PolygonHotSpot AlternateText="Jammu" Coordinates="180, 523,.... 539, 184, 542" HotSpotMode="PostBack" NavigateUrl="~/page2.aspx" PostBackValue="(JK)-Jammu" />
<asp:PolygonHotSpot Coordinates="492, 526, 506,.... 498, 518" HotSpotMode="PostBack" NavigateUrl="~/page2.aspx" PostBackValue="(JK)-Leh" />
</asp:ImageMap>
</div>
答案 0 :(得分:0)
尝试向NavigateUrl添加查询字符串,如下所示:
<asp:PolygonHotSpot AlternateText="Jammu" Coordinates="180, 523,.... 539, 184, 542" HotSpotMode="PostBack" NavigateUrl="~/page2.aspx?region=JKJammu" PostBackValue="(JK)-Jammu" />
<asp:PolygonHotSpot Coordinates="492, 526, 506,.... 498, 518" HotSpotMode="PostBack" NavigateUrl="~/page2.aspx?region=JKLeh"
PostBackValue="(JK)-Leh" />
请参阅NavigateUrl ...
答案 1 :(得分:0)
如果为ImageMap.HotSpotMode属性指定HotSpotMode.Navigate,则在单击HotSpot时页面将导航到URL。使用NavigateUrl属性指定要导航到的URL。
和
如果为ImageMap.HotSpotMode属性指定HotSpotMode.PostBack,则在单击HotSpot时页面将生成回发到服务器。使用PostBackValue属性指定热点区域的名称。发生回发事件时,此名称将在ImageMapEventArgs事件数据中传递。单击回发HotSpot时,将引发Click事件。若要以编程方式控制单击回发HotSpot时执行的操作,请为Click事件提供事件处理程序。
的
所以我认为你应该将 HotSpotMode 设置为 PostBack ,然后抓住 PostBackValue ,然后使用
Response.Redirect("~/page2.aspx?value=" + e.PostBackValue);