[英]Refreshing an asp.net page to top of page from user control
我正在為表單使用更新面板,單擊“繼續”按鈕時將返回到同一頁面,但使可見的不同字段得以填寫。這些字段之一是一些信用卡數據,並且是用戶控件的一部分。 用戶控件具有“立即付款”按鈕。 因此,頁面內有一個用戶控件,其中包含您要填寫的字段,然后單擊“立即付款”。 點擊此按鈕后,如果出現驗證錯誤,則錯誤會顯示在頁面頂部,但頁面不會移至頁面頂部。 我想知道在用戶單擊更新面板中包裝的頁面上的用戶控制按鈕后,如何滾動到頁面頂部。(在這種情況下,最好使用javascript(而不是jquery))
代碼示例:
<ajax:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:ImageButton ID="ContinueButton" runat="server" AlternateText="Continue" SkinID="Continue" EnableViewState="false" OnClick="ContinueButton_Click" ValidationGroup="group1" />
</ContentTemplate>
</ajax:UpdatePanel>
在用戶控件后面的代碼中被實例化。
ASP.CreditCardStuff cc = new ASP.CreditCardStuff();
cc.ValidationGroup = "group1";
phForms.Controls.Add(cc);
這是包含“立即付款”按鈕的用戶控件
如何在按鈕旁邊以及頁面頂部提供驗證錯誤指示符? 這樣,頁面將保持滾動到同一點(對用戶來說更合適),而不是跳轉到頂部,純粹是為了使頁面頂部的錯誤指示符可見(不太好)。
您可以處理end_request事件:
function pageLoad(sender, args) {
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function (sender, args) {
if (args.get_error() == null) {
// do the scrolling here
}
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.