日期:2014-04-16  浏览次数:20419 次

1.在提交的时候过程很长,为了防止用户再次点击而且为了界面友好可以用一个层遮住所有按钮再显示个提示信息,等服务器端处理完成再导航到本页(location.href='地址')就可以:


<div id="doing" runat="server" style="Z-INDEX: 12000; LEFT: 0px; VISIBILITY: hidden; WIDTH: 100%;  POSITION: absolute; TOP: 300px; HEIGHT: 100%">
                <table width="100%" height="100%">
                    <tr align="center" valign="middle">
                        <td>
                            <table width="169" class="font3" height="62" bgcolor="#6699ff" style="FILTER: Alpha(Opacity=75); WIDTH: 169px; HEIGHT: 62px">
                                <tr align="center" valign="middle">
                                    <td>页面提交中,请等待<br>
                                        Please wait
                                    </td>
                                </tr>
                            </table>
                        </td>
                    </tr>
                </table>
            </div>

pageload里面这么写:this.Button1.Attributes.Add("onclick","document.getElementById('doing').style.visibility='visible';");
,等操作结束重定向了后页面重新加载一次,这个层也就消失了。。。


Page.SmartNavigation 属性
获取或设置指示是否启用智能导航的值


如果启用智能导航,则为 true;否则为 false。

备注
在大多数情况下不要在代码中设置该属性。在 .aspx 文件的 @ Page 指令中将 SmartNavigation 属性设置为 true。请求该页时,动态生成的类将设置该属性。

Internet Explorer 5.5 或更高版本浏览器请求页时(或稍后),智能导航将通过执行下列功能提高用户对该页的操作能力:

消除导航导致的闪烁。
从一页移动到另一页时保持滚动位置。
保持导航之间的元素焦点。
在浏览器的历史记录中只保留最后一页的状态。
智能导航最适用于需要频繁回发但是其可是内容在返回时不会发生显著更改的 ASP.NET 页。在决定是否将该属性设置为 true 时,请仔细考虑这一点。


[C#]
void Page_Load(Object sender, EventArgs e)
{
   this.SmartNavigation = true;
}
void Button_Click(Object sender, EventArgs e)
{
   Label1.Text="<b>The value of 'SmartNavigation' property is </b>" + "'" + this.SmartNavigation + "'";
}

它最外边还是有一个frameset。你可以注意到与ajax的区别就是窗口底下多了个一闪而过的蓝色进度条(我真希望ie能有办法去掉这个)。其实很简单,几秒钟搞定!就是把你的页面的属性 smartNavigation 设置为 true
1遇到的问题:
使用了验证控件,编译时提示“无法找到脚本库……”
解决方法:
由于更换了主目录路径,应将在wwwroot下的aspnet_client文件夹拷到新的目