或者只要在单击button 才执行方法aa()就OK,我试过用<asp:button>控件,aa()中的功能在其事件中实现,可我不希望点击<asp:button>后刷新页面,总之就是要在javascript中调用后台代码实现aa()中的功能而不刷新页面就行了,请高手指点

解决方案 »

  1.   

    又一个分不清客户端与服务端的..<% aa(); %> 这一句,肯定在生成客户端代码的时候就执行了.
      

  2.   


    <%...%>这里面的是服务器端代码,它一定优先于<script type="text/javascript">...</script>执行的!
    本例中,如果aa();的功能是输出字符串“alert("我被执行了!")”那么在客户端请求该页时,服务器会执行aa()函数,将<%aa(); %>替换成执行结果(按照假设,这里会是“alert("我被执行了!")”),这个时候在浏览器内查看源文件,你看到的会是
    <html xmlns="http://www.w3.org/1999/xhtml" > 
    <head runat="server"> 
          <title>无标题页  </title> 
          <script type="text/javascript"> 
            function show() 
            { 
                  alert("我被执行了!"); 
            } 
          </script> 
    </head> 
    <body> 
          <form id="form1" runat="server"> 
          <div> 
              <input id="Button1" type="button" value="button" onclick="show()" /> 
          </div> 
          </form> 
    </body> 
    </html>
    你这时应该不会看到有信息框弹出,直到你点击button,就会弹出“我被执行了”!所以,如果aa()函数的功能是写出js代码的话,这样使用是不会出现问题的!但照楼主的讲法,应该是其他的功能~!那么这就需要把函数放到另外一个页面,而show()的功能就该改成异步请求这个页面~!
      

  3.   

    <%aa(); %>; 在服务端执行,以生成完整的javascript 
    ie端运行服务端生成的javascript