Asp.net 停止在带有ContentPlaceHolder的母版页上滚动到顶部?
这件事我已经做了两天了,都没有成功 正如您在主题中所读到的,我只是试图在用户单击我的GridView中的链接时阻止网页滚动到页面顶部。但是GridView位于母版页上设置的ContentPlaceHolder中 我已经通过Google查看了所有可能的解决方案,甚至是在运行时构建jscript代码的新程序集idead,但都失败了 这是我的主页:Asp.net 停止在带有ContentPlaceHolder的母版页上滚动到顶部?,asp.net,scroll,master,Asp.net,Scroll,Master,这件事我已经做了两天了,都没有成功 正如您在主题中所读到的,我只是试图在用户单击我的GridView中的链接时阻止网页滚动到页面顶部。但是GridView位于母版页上设置的ContentPlaceHolder中 我已经通过Google查看了所有可能的解决方案,甚至是在运行时构建jscript代码的新程序集idead,但都失败了 这是我的主页: <%@ Master Language="C#" AutoEventWireup="true" CodeFile="Attendance.maste
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Attendance.master.cs" Inherits="Attendance_Attendance" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Attendance</title>
<style type="text/css">
.timetablecell {
cursor: pointer;
}
.timetablecell:hover {
background-color: Orange;
}
.smalltext {
font-size: 8pt;
}
.classsize {
font-size: 8pt; display: block;
}
.nowrap {
white-space: nowrap;
}
img {
border: 0;
}
</style>
<asp:ContentPlaceHolder ID="ContentPlaceHolderHead" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="SMan" runat="server" EnablePageMethods="True">
</asp:ScriptManager>
<asp:Panel ID="HeaderPanel" runat="server">
<table width="100%">
<tr valign="middle">
<td style="width: 25%; " valign="middle" align="left" >
<img src="../images/blahblah.jpg" alt="Tec-NQ" />
</td>
<td valign="middle" align="center" style="width: 50%">
<asp:Image ID="Image3" runat="server" ImageUrl="~/images/blahblah2.jpg" /><br />
<asp:Label ID="Label1" runat="server" Font-Bold="True" Font-Names="Times New Roman"
Font-Size="1.2em">BLAHBLAHBLAH</asp:Label>
</td>
<td style="width:25%" align="right">
<img src="../images/BLAHBLAH3.jpg" alt="BLAHBLAH" />
</td>
</tr>
</table>
</asp:Panel>
<table width="100%">
<tr>
<td valign="top" style="width:15%">
<asp:Panel ID="MenuPanel" runat="server">
<table>
<tr>
<td>
<h5 style="white-space:nowrap;">Attendance Menu</h5>
</td>
</tr>
<tr>
<td>
<asp:Menu ID="Attendance" ItemWrap="true" Font-Size="10pt" StaticMenuStyle-VerticalPadding="4"
runat="server" StaticMenuItemStyle-VerticalPadding="1">
<Items>
<asp:MenuItem NavigateUrl="~/Attendance/ClassAttendance.aspx" Text="Class Attendance"
Value="Class Attendance"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/Classes.aspx" Text="Classes"
Value="Classes"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/Timetable.aspx" Text="Timetable"
Value="Timetable"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/Roster.aspx" Text="Roster"
Value="Roster"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/ApprovedAbsences.aspx" Text="Approved Absences"
Value="Approved Absences"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Default.aspx" Text="Main Menu" Value="Main Menu"></asp:MenuItem>
</Items>
<StaticMenuStyle VerticalPadding="4px" />
</asp:Menu>
<asp:Menu ID="AttendanceReports" ItemWrap="true" Font-Size="10pt" StaticMenuStyle-VerticalPadding="4"
runat="server" StaticMenuItemStyle-VerticalPadding="1">
<Items>
<asp:MenuItem Text="<h5 style='margin-top:10px;margin-bottom:10px'>Reports</h5>" Selectable="false"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/ClassRoles.aspx" Text="Class Logins"
Value="Class Logins"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/StudentsHereToday.aspx" Text="Students Here Today"
Value="Students Here Today"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/StudentAbsences.aspx" Text="Student Absences"
Value="Student Absences"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/StudentKPI.aspx" Text="Student KPI"
Value="Student KPI"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/AttendanceDetailed.aspx" Text="Attendance Detailed"
Value="Attendance Detailed"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/StudentAttendance.aspx" Text="Attendance Summary"
Value="Attendance Summary"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/AttendanceNotMarked.aspx" Text="Attendance Not Marked"
Value="Attendance Not Marked"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/AttendanceFullTime.aspx" Text="Attendance Full Time"
Value="Attendance Full Time"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/rptsAttendance/default.aspx" Text="Old Attendance Reports"
Value="Old Attendance Reports"></asp:MenuItem>
<asp:MenuItem NavigateUrl="~/Attendance/StaffTimetable.aspx" Text="Staff Timetable"
Value="Staff Timetable"></asp:MenuItem>
</Items>
<StaticMenuStyle VerticalPadding="4px" />
</asp:Menu>
</td>
</tr>
<tr>
<td>
<asp:ImageButton ID="HelpImageButton" runat="server" ImageUrl="/images/helpsm.jpg" AlternateText="HELP" CausesValidation="false" OnClick="Help_Click" />
<!--a href="/Help/Attendance/ClassAttendance.aspx" target="_blank"><img src="/images/helpsm.jpg" alt="HELP" border="0"/></a-->
</td>
</tr>
</table>
</asp:Panel>
</td>
<td valign="top">
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
</asp:ContentPlaceHolder>
</td>
</tr>
</table>
</form>
</body>
</html>
出席
.表细胞{
光标:指针;
}
.timetablecell:悬停{
背景颜色:橙色;
}
.smalltext{
字号:8pt;
}
.班级人数{
字体大小:8pt;显示:块;
}
诺拉普先生{
空白:nowrap;
}
img{
边界:0;
}
最后一个链接看起来最有希望,但我认为它是为非母版页的网站编写的,这些网站的形式很简单
我还尝试了通常的解决方案来放置SmartNavigation标签和
Page.maintaintScrollPositionOnPostback=true代码>
上述措施都不起作用
我怀疑这是因为我使用了ContentPlaceHolder?也许我应该在它周围放一个
?我试过了,但也没用
谢谢你的支持
Cheers您可以尝试在内容占位符中添加div标记,然后设置属性overflow=scroll。这可能有用
<div style:"overflow=scroll">
<!--Your code-->
</div>
删除href=“#”
并使用花哨的CSS将ASP.net页面变为蓝色链接,同时鼠标也会发生变化。它可以工作。我只需在gridview中删除标记中的href=“#”就找到了一个“解决办法”。唯一的损失是标签的蓝色链接的颜色,但它的工作!真不敢相信这么简单的东西需要像上面提到的那样编码,只是为了避免滚动到顶部!很抱歉那是行不通的。无论是母版页还是ASPX页本身。你读过上面链接中的一些“解决方案”吗?也许你会看到他们如何解决我的问题,从而更好地了解我的问题。不幸的是,它们中没有一个真正以母版页为目标的网站。我知道母版页有一些“解决方案”,但它们依赖于DIV或一些过度控制。我什么都不用。我在母版和ASPX页面中都使用内容占位符。
<div style:"overflow=scroll">
<!--Your code-->
</div>