データページャー コントロールをリストビューにバインドしました。
DataPager クリックでリストビュー コントロールの最初の項目までスクロールしたいと思います。これはjavascriptで行うべきだと思います。データページャーがそれを許可していないようです。
どのようなオプションがありますか? DataPager をクリックしたときに特定のアンカーにスクロールするにはどうすればよいですか?
データページャー コントロールをリストビューにバインドしました。
DataPager クリックでリストビュー コントロールの最初の項目までスクロールしたいと思います。これはjavascriptで行うべきだと思います。データページャーがそれを許可していないようです。
どのようなオプションがありますか? DataPager をクリックしたときに特定のアンカーにスクロールするにはどうすればよいですか?
基本的な htmlという名前のアンカーを使用して、特定のアンカーまでスクロールできます。
ありがとうティム!
そして、そこにいる怠惰な人たちのために(私と同じように;)、これがVB.NETに相当するものです。タイプミスの修正と新しいRegisterClientScriptBlockメソッドが含まれています
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
FocusControlOnPageLoad("Label1", Me.Page)
End Sub
Public Sub FocusControlOnPageLoad(ByVal ClientID As String, ByVal page As System.Web.UI.Page)
Dim csName As String = "ScrollViewScript"
Dim csType As Type = Me.GetType
Dim cs As ClientScriptManager = page.ClientScript
If Not cs.IsClientScriptBlockRegistered(csType, csName) Then
Dim csText As New StringBuilder()
csText.Append("<script>function ScrollView(){")
csText.Append("var el = document.getElementById('" & ClientID & "');")
csText.Append("if (el != null){")
csText.Append("el.scrollIntoView();")
csText.Append("el.focus();}}")
csText.Append("window.onload = ScrollView;")
csText.Append("</script>")
cs.RegisterClientScriptBlock(csType, csName, csText.ToString())
End If
End Sub
クライアント側または「サーバー側」で 、javascript 関数scrollIntoViewを使用できます: http://www.codeproject.com/KB/aspnet/ViewControl.aspx