我用Repeater显示数据,每条数据有个删除功能按钮,当我删除最后一条记录时候的时候,页面刷新时又重新回到了第一条,
怎么才能定位到最后一条哪里。
我用锚定位好像不行,
<a name='#<%#Eval("ID") %>'></a>这个是加在Repeater里面的,后台:
string url = "~/Help/Faq.aspx" + a;
Response.Redirect(url);谁有做过类似的定位,给个例子?
怎么才能定位到最后一条哪里。
我用锚定位好像不行,
<a name='#<%#Eval("ID") %>'></a>这个是加在Repeater里面的,后台:
string url = "~/Help/Faq.aspx" + a;
Response.Redirect(url);谁有做过类似的定位,给个例子?
document.body.scrollHeight = getCookie( "pos ") + "px "
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Repeater......../>
</<asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
</form>
Response.Redirect(url);
http://localhost:2575/Help/Faq.aspx#38
这个是回复后的地址
<div id="divReply" runat="server" visible="false">
<textarea id="txtReplyContext" runat="server" cols="40" rows="3"></textarea><br />
<a href='#<%#Eval("ID")%>'></a>后台
string url = "~/Help/Faq.aspx" + "#"+ViewState["id"].ToString();
Response.Redirect(url);
这样做了之后还是不行。div中设置?啥意思,怎么设置?麻烦细说一下
真搞不懂为什么这么简单的东西还有js来写lz不懂的话看下这个
http://www.cnblogs.com/aqiang/archive/2007/12/19/1005779.html
<asp:Repeater ID="Repeater1" runat="server" ....>
<ItemTemplate>
<div id='<%# Eval("id") %>'>
..........
..........
</ItemTemplate>
</asp:Repeater>连接:
string url = "~/Help/Faq.aspx#" + id;
或
Response.Redirect("~/Help/Faq.aspx#" +id);
这个id就是你点击的那行的id
1)在Repaeter中使用锚定位:直接在Repeater下面定义一个DIV
<asp:Repeater ID="Repeater1" runat="server" onprerender="Repeater1_PreRender" >
<ItemTemplate>
<div id='<%# Eval("id") %>'>
然后后台在执行完方法之后,给个跳转值:
//url = "~/Help/Faq.aspx" + "#"+div的值;
//Response.Redirect(url);
2)使用UpdatePanel
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
把Repeater放到这里就OK,因为每次执行完数据,它只会刷新这块的数据 </<asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
</form>
3)在JS中使用cookie记录位置,设置页面滚动条位置 直接在页面上加入这段代码,刷性页面后它会自动定位到上次的位置
<script language="javascript" type="text/javascript">
<!--
function SetCookie(sName, sValue) {
date = new Date();
s = date.getDate();
date.setDate(s + 1); //expire time is one month late!, and can't be current date!
document.cookie = sName + "=" + escape(sValue) + "; expires=" + date.toGMTString();
}
function GetCookie(sName) {
// cookies are separated by semicolons
var aCookie = document.cookie.split("; ");
for (var i = 0; i < aCookie.length; i++) {
// a name/value pair (a crumb) is separated by an equal sign
var aCrumb = aCookie[i].split("=");
if (sName == aCrumb[0]) {
return unescape(aCrumb[1]);
}
} // a cookie with the requested name does not exist
return null;
} function fnLoad() {
document.body.scrollLeft = GetCookie("scrollLeft");
document.body.scrollTop = GetCookie("scrollTop");
} function fnUnload() {
SetCookie("scrollLeft", document.body.scrollLeft)
SetCookie("scrollTop", document.body.scrollTop)
} window.onload = fnLoad;
window.onunload = fnUnload;
// -->
</script>
======================================================
应该是行的!
仔细看了一下,你是做删除操作,你定位的那条记录的没有了,
所以根据id就定位不到,如果你做修改操作就可以定位!!
<a href="xxx.aspx#div的id"></a>repeater中,你怎么设计html 运行后的页面就是你设计的html 使用时不用考虑因为它有个runat="server"而有啥特别的。