2009-06-19 19 views
0

私は顧客の注文の詳細を示すasp.netデータグリッドを持っています。 グリッドの下部にあるページネーションは、datalistおよびasp.net Linkbuttonコントロールを使用して行います。asp.netのリンクボタンをクリックすると、ページ上部にフォーカスが設定されます

<asp:DataList ID="DataList2" runat="server" CellPadding="1" CellSpacing="1" 
     OnItemCommand="DataList2_ItemCommand" 
     OnItemDataBound="DataList2_ItemDataBound" RepeatDirection="Horizontal"> 
    <ItemTemplate> 
     <asp:LinkButton ID="lnkbtnPaging" runat="server" 
      CommandArgument='<%# Eval("PageIndex") %>' 
      CommandName="lnkbtnPaging" 
      Text='<%# Eval("PageText") %>' /> 
     <asp:Label runat="server" ID="lblPageSeparator" Text=" | " name=></asp:Label> 
    </ItemTemplate> 
</asp:DataList> 

、ユーザーが任意のページ番号(ie.Linkボタン)をクリックし、私はページの最上部にフォーカスを設定する必要があります。 は、ここでは、コードです。

どうすればよいですか?

ありがとうございます!

答えて

3

私はデフォルトの動作は、ページの上部に戻って設定するページのスクロール位置になると思います。この動作を無効にする可能性のあるページには他に何かがありますか?例えば

  1. は、UpdatePanelの中​​にあなたのDataListですか?その場合、現在のスクロール位置は、(部分)ポストバックにわたって維持される。したがって、スクロール位置をページの先頭に戻す必要があります。これを行う1つの方法は、スクロール位置を設定するPageRequestManagerのEndRequestクライアント側イベントのハンドラを実装することです。このスレッドは説明しますhow
  2. Page MaintainScrollPositionOnPostBackプロパティがtrueに設定されていますか?
+0

ur入力のおかげで...: 上記のポイント#1で示唆したように、コード私のために働いた! user74042

1

名前の付いたアンカーをページ上部に設定してみることもできます。ここでそれを説明する記事がありますhttp://www.w3schools.com/HTML/html_links.asp

+0

は、そのような場合には、あなたは常にだけでマークアップの唯一の別のラインである標準的なHTMLを使用でき – user74042

+0

のLinkBut​​ton asp.netで動作するようには思えません。これは、リンクボタン、ラベル、ハイパーリンク、およびASP.NETのテーブルコントロールのように、とにかく、私の意見では、HTMLで置き換えられる方が良いです –

0

AJAXの部分的なポストバックの後、エラーメッセージなどを表示するには、ASPXページの先頭に戻る必要がある場合があります。ここで私が行った方法があります。以下のJavaScript関数をASPXページに追加して、ScriptManager.RegisterClientScriptBlockメソッドを使用してコードビハインドで必要に応じてメソッドを呼び出すことができます。 ASP.NET C#のコードビハインド:

ScriptManager.RegisterClientScriptBlock(this, Page.GetType(), 
"ToTheTop", "ToTopOfPage();", true); 

ではJavaScript:

<script type="text/javascript"> 
function ToTopOfPage(sender, args) { 
    setTimeout("window.scrollTo(0, 0)", 0); 
} 

あなたはまた、単にJavaScriptがボタンのOnClientClickプロパティを使用して、ページの一番上にスクロールすることができます。しかし、この動作は、ボタンがクリックされるたびに発生し、発生させたくないときに発生します。たとえば: <asp:Button id="bntTest" runat="server" Text="Test" OnClick="btn_Test" OnClientClick="javascript:window.scrollTo(0,0);" />

アンカーという名前
0
<asp:LinkButton ID="lbGonder" runat="server" CssClass="IK-get" ValidationGroup="ik" OnClick="lbGonder_Click" OnClientClick="ddd();" title="Gönder">Gönder</asp:LinkButton>` 
<script type="text/javascript"> 
var ddd = (function() { 
    $('body,html').animate({ 
     scrollTop: 300 
    }, 1453); 
    return false; 
}); 

+1

回答には、コードの説明と問題の解決方法の説明が含まれている必要があります。 – AbcAeffchen