因为链接地址中有变量需要在cs中获取,所以只得使用服务器端button控件。
考虑了以下方案,不理想:1、服务器端onclick后,response.redirect,不能实现新窗口打开
2、btn.oncilentclick="window.open...."或btn.Attributes.Add("onclick","window.open....");
这两个方案,可以实现新窗打开,但是postback了aspx页面,性能、体验不佳是否有更好的办法?

解决方案 »

  1.   

    你在第二种方案后面加个return false就不会PostBack了
    btn.OnClientClick="window.open(...);return false;";
    或者你直接用html控件中的<input type="button"不用服务器控件不更好
      

  2.   

    btn.OnClientClick="window.open(...);return false;"; 
      

  3.   

    OnClientClick="open();"
    function open()
    {
     URL = "";
     myleft = (screen.availWidth - 500) / 2;
     window.open(URL, "", "height=500,width=550,status=1,toolbar=no,menubar=no,location=no,scrollbars=yes,top=100,left=" + myleft + ",resizable=yes");
    }