一页网站和 ASP GridView 回发问题
One page website and ASP GridView postback issue
我有一个包含不同部分的单页网站。一个特定部分(第 2 部分)具有允许内联编辑的网格视图。
问题:
当 OnClick 方法被触发时,它会导致回发并且页面滚动到第一部分。
为了覆盖它,我尝试了同样的重定向:
Response.Redirect("Home.aspx#section2");
在这种情况下,它完美地重定向但gridview 编辑模板丢失并再次显示项目模板。我的猜测是,gridview 正在反弹。
我也尝试过 here 的 javascript 方法。它给出了相同的结果。
<asp:Button ID="Edit" runat="server" Text="Edit" OnClick="Edit_OnClick"
OnClientClick="document.location.href+='#section2';return false;"></asp:Button>
我还尝试了 link 按钮的 portbackurl 属性。我得到了同样的意外结果。
关于我应该如何解决这个问题有什么建议吗?我只想能够在没有页面刷新或重定向的情况下转到第 2 部分。
感谢您提前提供帮助! :)
了解 UseSubmitProperty 或试试这个..
<a data-toggle="modal" href="login.aspx#myModal">Forgot Password?</a>
和
<div aria-hidden="true" aria-labelledby="myModalLabel" role="dialog" tabindex="-1" id="myModal" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Forgot Password ?</h4>
</div>
<div class="modal-body">
<p>Enter your e-mail address below to reset your password.</p>
<asp:TextBox ID="emailForgot" placeholder="Email" CssClass="form-control" runat="server" TextMode="Email"></asp:TextBox>
</div>
<div class="modal-footer">
<button data-dismiss="modal" class="btn btn-default" type="button">Cancel</button>
<asp:LinkButton ID="LinkButton1" CssClass="btn btn-theme" runat="server" OnClick="LinkButton1_Click">Submit</asp:LinkButton>
</div>
</div>
</div>
</div>
您可以像下面那样在更新面板中移动您的 gridview,并在点击按钮后更新更新面板的代码
ASPX:
在页面标签上将 MaintainScrollPositionOnPostback 设置为 true
或者您可以进行部分回发
<asp:UpdatePanel ID="updList" runat="server" UpdateMode="Conditional">
<ContentTemplate>
.......
</ContentTemplate>
</asp:UpdatePanel>
隐藏代码:
protected void Edit_OnClick(object sender, EventArgs e)
{
//code to update data or save data
updList.Update();
}
我有一个包含不同部分的单页网站。一个特定部分(第 2 部分)具有允许内联编辑的网格视图。
问题: 当 OnClick 方法被触发时,它会导致回发并且页面滚动到第一部分。
为了覆盖它,我尝试了同样的重定向:
Response.Redirect("Home.aspx#section2");
在这种情况下,它完美地重定向但gridview 编辑模板丢失并再次显示项目模板。我的猜测是,gridview 正在反弹。
我也尝试过 here 的 javascript 方法。它给出了相同的结果。
<asp:Button ID="Edit" runat="server" Text="Edit" OnClick="Edit_OnClick"
OnClientClick="document.location.href+='#section2';return false;"></asp:Button>
我还尝试了 link 按钮的 portbackurl 属性。我得到了同样的意外结果。
关于我应该如何解决这个问题有什么建议吗?我只想能够在没有页面刷新或重定向的情况下转到第 2 部分。 感谢您提前提供帮助! :)
了解 UseSubmitProperty 或试试这个..
<a data-toggle="modal" href="login.aspx#myModal">Forgot Password?</a>
和
<div aria-hidden="true" aria-labelledby="myModalLabel" role="dialog" tabindex="-1" id="myModal" class="modal fade">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4 class="modal-title">Forgot Password ?</h4>
</div>
<div class="modal-body">
<p>Enter your e-mail address below to reset your password.</p>
<asp:TextBox ID="emailForgot" placeholder="Email" CssClass="form-control" runat="server" TextMode="Email"></asp:TextBox>
</div>
<div class="modal-footer">
<button data-dismiss="modal" class="btn btn-default" type="button">Cancel</button>
<asp:LinkButton ID="LinkButton1" CssClass="btn btn-theme" runat="server" OnClick="LinkButton1_Click">Submit</asp:LinkButton>
</div>
</div>
</div>
</div>
您可以像下面那样在更新面板中移动您的 gridview,并在点击按钮后更新更新面板的代码
ASPX:
在页面标签上将 MaintainScrollPositionOnPostback 设置为 true
或者您可以进行部分回发
<asp:UpdatePanel ID="updList" runat="server" UpdateMode="Conditional">
<ContentTemplate>
.......
</ContentTemplate>
</asp:UpdatePanel>
隐藏代码:
protected void Edit_OnClick(object sender, EventArgs e)
{
//code to update data or save data
updList.Update();
}