我后台有个方法:
public void lbClick()
    {
        JudgeIfhaveRights(NeiMengPreRemittedLogic.GnType.实施项目录入.ToString(), "../ProjectManagement/ProRegist.aspx");
    }
本来最开始用的是按钮事件onclick直接完成的,后来发现这个事件很慢,每次跳转的时候会先刷一下本页,然后跳转到相应的页面。所以想改用OnClientClick来做,OnClientClick好像只能调用前台JS函数,于是把事件里的内容拿出来了  放到上面那个方法里,然后前台写个JS函数调用后台这个方法,再用OnClientClick来调用这个JS函数。
JS函数:
function linkClick()
{
    document.write("<% LinkButton_Click(); %>");
    return true;
}
写的估计不对吧。
然后:<asp:LinkButton ID="LinkButton1" runat="server" OnClientClick="return linkClick();">实施项目录入</asp:LinkButton>

解决方案 »

  1. 前台调用后台的方法不刷新只能使用ajax.
      

  2. 您的意思是放个updatePanel么?
      

  3. document.write("<% LinkButton_Click(); %>");
    我无语啦! 浏览器上无法执行 asp.net 代码的!如果你恰好见过aspx页面上写 asp.net 代码,那个是先在后台执行完然后附加进aspx所输出的html流中的,而你这种代码.......
      

  4. 汗  以前搞C/S的,现在刚做B/S的东西,感觉好混乱啊。   我用的ajaxToolkit控件,应该不需要再放个updatePanel吧,所以才想用OnClientClick来弄  但是不知道怎么弄
      

  5. 汗 以前搞C/S的,现在刚做B/S的东西,感觉好混乱啊。
    ========>
    建议先不要用第三方插件,先把基础弄扎实,搞清楚bs程序工作的基本原理,事件机制等。否则就还会犯这个错误。
      

类似问题 »