如何作到在页面POSTBACK刷新后,使LISTBOX的滚动条仍然保持上次的位置
如何作到在页面POSTBACK刷新后,使LISTBOX的滚动条仍然保持上次的位置
http://four-corner.appspot.com/
可以使用Javascript来处理:
<script language="javascript" >
function autoscroll()
{
var list = document.getElementById("ListBox1");
if ( !list || !list.multiple || list.length == 0 ) return;
var lastItem = list[list.length-1];
if (lastItem.selected)
{
lastItem.selected = true;
return;
}
else
{
lastItem.selected = true;
lastItem.selected = false;
}
for (var i=0; i < list.length; i++)
{
if (list[i].selected) // or list.selected ?
{
list[i].selected = true;
return;
}
}
}
</script>
在Page_Load添加:
protected void Page_Load(object sender, EventArgs e)
{
Page.RegisterStartupScript("MyScript", "<Script language=javascript defer='true'> autoscroll() </script>");
}
这样就可以实现postback后,listbox的垂直滚动条仍在页面回发前的位置。
ref: http://codingforums.com/showthread.php?t=80998