我在页面上分别添加三种按钮添加<asp:button><input type=button><input type=submit>,三种按钮都将runat设为server 并添加了服务器端点击事件。然后我也在客户端编写按钮点击后的触发事件。这是我发现asp:button控件不能正常运行,type=button也是还提示脚本错误,而type=submit就可以正常运行,它先运行javascript的事件,然后再运行服务器的点击事件。我想请教各位高手为什么会出现这中情况?另外我想知道asp.net的运行机制是如何的?是否先找出<asp:>控件然后运行服务器断的程序代码,最后运行页面代码?

解决方案 »

  1.   

    <asp:button>服务器端控件点击以后会引起postback的,推荐3个按钮都使用客户端 input
      

  2.   

    button.Attribute.Add(name,function);
      

  3.   

    服务器控件响应客户端的事件
    Button2.Attributes.Add("onclick","showmsg()");function showmsg()
    {
    alert("hello");
    }
      

  4.   

    按照三楼的人所讲服务器端事件不会响应客户端事件,那么为什么<input type=sumbit>可以同时响应客户端和服务器端事件,而<input type=button>就不能?还有就是四楼的这句话“button.Attribute.Add(name,function);(这句话用途我明白的)”想说明什么呢?
      

  5.   

    web控件要用onclick事件,得先在服务器注册