我知道有很多關於此的帖子,但我一直在尋找這一整天。 我在這裏嘗試獲得的是點擊GridView中的一行,然後將頁面滾動到該位置,就像在html中的錨點一樣。window.scrollTo(...)錯誤:Microsoft JScript運行時錯誤:對象預計
這是我用來滾動的鏈接。我在我的js文件中調用一個函數。這是在我的GridView中。
<asp:LinkButton runat="server" OnClientClick="window.scrollTo(0, GetPosition(this))" CommandName="select" ID="InkSelect" Text="SELECT" />
然後,我叫我的js文件這個功能,鏈接這樣的,以防萬一:
<script type="text/javascript" src="~js/monjs.js"></script>
在monjs.js,這裏是功能:
function GetPosition(element) {
var top = 0;
var e = document.getElementById(element);
while (e.offsetParent != undefined && e.offsetParent != null) {
top += e.offsetTop + (e.clientTop != null ? e.clientTop : 0);
e = e.offsetParent;
}
return top;}
而Visual studio則突出了這一行:
...... <a onclick="window.scrollTo(0, GetPosition(this));" .....
我嘗試了許多其他的方式來做到這一點,在vb文件中註冊一個腳本,在onclick屬性中硬編碼window.scrollTo(0,100),我沒有想法。 我試過row.focus,別提這個。 謝謝。
NITPICK:'e'是一個通常用於異常或事件對象的變量。大多數開發人員將使用elem,element或anchor來完成你正在做的事情。 – epascarello