<base target="_self">or 
http://xml.sz.luohuedu.net/xml/ShowDetail.asp?id=49ML4AO8-5PB3-4KNY-NJZD-LJOIOXV4M1X4

解决方案 »

  1.   

    这个可不是超难问题:
        主要是你忘了再head中加上<base target="_self">这句话了
      

  2.   


    在你的
    <header>  ...加上
    <base target="_self"></header>
      

  3.   

    <base target="_self">
    转载:
    往返行程:浏览器向用户显示一个窗体,用户与该窗体进行交互,这导致该窗体回发到服务器。但是,因为与服务器组件进行交互的所有处理必须在服务器上发生,这意味着对于要求处理的每一操作而言,必须将该窗体发送到服务器、进行处理、然后返回到浏览器。这一事件序列称作“往返行程
    理解了"往返行程"后,我们再来理解一下web页面的另一个特性----无状态性:客户端向服务器发送一个请求(譬如你在IE栏输入网址,回车),服务器接到请求,响应请求(处理事件),服务器完成处理后将生成的web页发送回浏览器,然后就清除该页的信息,释放服务器资源。服务再等待下一次请求,即使下一次是请求同一页,服务器重新开始创建和处理该页。服务器就是这样不停的重复这一过程。服务器不记录页面的状态或信息的特性我们就称之为“无状态性”。也许有朋友会问,我的控件每次刷新时会自动保存状态啊,那是因为asp.net引入了视图状态和状态管理,它会自动保持web控件的状态。关于服务器是怎样保存web控件的状态,我想我以后有能力或有时间的时候再写吧。请接着往下看。
    理解了这两个基本概念后,我们就来看看asp.net中的服务器处理页面的一个过程,服务器处理页面过程(大概)分以下几个阶段:ASP.NET 页框架初始化(Page_Init() )à 用户代码初始化(page_load()) à 验证(调用任何验证程序 Web 服务器控件的 Validate 方法来执行该控件的指定验证) à 事件处理(处理所引发的特定事件)  à  清除(page_unload()),每一阶段会触发不同的事件,阶段后面的括号内容就是该阶段触发的事件。由此我们知道服务器每次执行页面代码的过程就是:page_init() à page_load() à vlidate函数(web控件的验证事件,应具体到实际的应用中)à 引起页面回发的具体事件(例如button 的click事件等) à page_unload()。如果不考虑具体的页面执行,我们可以看出,页面每次处理时,都要执行Page_Init、Page_load、page_unload事件。回到我们的主题,如要我们把dropdownlist 或其它的控件的初始化代码都放在某些方面page_load事件里面执行,那么意思就是每次页面刷新或被请求时控件都被重新初始化了。因此就有了控件的值永远都不会变的问题了。所以我们应该把初始化控件的代码放在:
    if (!Page.IsPostBack){ //放在这里}。