try 
//手工调用_doPostBack()<form runat="server">
  <input type=button id="YourButton" onclick="aaa()"> 
  <asp HyperLink id="YourHyperLinkID" runat=server OnClick="YourServerCode"/>
</form><script language="javascript">
function aaa()
{
  document.getElementById("YourButton").disabled=true;
  _doPostBack("YourHyperLinkID","");
}
</script><script language="VB" runat="server">
Sub YourServerCode(sender as Object, e as EventArgs)
  Response.Write("button clicked and button disalbed")
End Sub
</script>

解决方案 »

  1.   

    sorry
    好象是 <input type=submit id="YourButton" onclick="aaa()"> 
      

  2.   

    十分感谢xiahouwen(活靶子.NET) ,我试了一下好像是有JS错误能不能再帮忙看一下。。
      

  3.   

    <asp HyperLink id="YourHyperLinkID" runat=server OnClick="YourServerCode"/>
    -------->
    <asp:button id="YourHyperLinkID" runat=server OnClick="YourServerCode"/>HyperLink 没有 OnClick 的其它的就差不多了
      

  4.   

    把HyperLink改成LinkButton
    原理是给Linkbutton的text属性不要赋值那么 他就显示不出来
    在你的input点击的 时候

    document.getElementById("YourButton").disabled=true;
    然后手工调用LinkButtion的回法事件就是模拟Linkbutton被点击了一下
    _doPostBack("YourLinkButtonID","");
      

  5.   

    是呀,原理是很清楚的,不过就是这句
    doPostBack("YourLinkButtonID","");
    不行
      

  6.   

    那再试试
    _doPostBack('<%Response.Write(YourLinkButtonID.ClientID);%>','');
    或者你看看 你的YourLinkButtonID在html里生成的代码的id是什么
    写在_doPostBack("YourLinkButtonID","");内