我的message.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="messages.aspx.cs" Inherits="_messages" %>
 <script type="text/javascript">
   ....
        function call()
       {
           _messages.UpdateMessage(username,title,content,ip);
        }
.....    
</script>  message.aspx.cs
     public string UpdateMessage(string username,string title,string content,string ip)
    {
            }
代码就如上,我想在call函数里面调用message.aspx.cs里面的UpdateMessage函数,得怎么表示.我这么写它会出现"网页有错误",'_messages'未定义.然后就执行不下去了,各位高手,得用什么方法解决.急死了.

解决方案 »

  1.   

    JS不能这样直接调用CS的方法,只有用AJAX
      

  2.   

    一个字很晕js和C#是不能直接调用的.方法可以用ajax来解决下个ajaxpro,里面有deom.
      

  3.   

    message.aspx:
    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="messages.aspx.cs" Inherits="_messages" %> 
    <% UpdateMessage(username,title,content,ip); %>
      

  4.   

    如果你不怕刷新,可以考虑以下这个方法来代替:
    1)将后台那个方法放在按钮的单击事件里面(按钮的width设置为0),这样你就可以在前台js
      function   call() 
                  { 
                          __doPostBack(.......)                } 
      

  5.   

    2)这个方法就是防止刷新,那么就使用ajax的方法了
      

  6.   

    Web.Config里加这样一句<system.web>
    <httpHandlers>
    <add verb="POST,GET" path="ARMS/*.ashx" type="AjaxPro.AjaxHandlerFactory,AjaxPro.2"/>
    </httpHandlers>cs文件里定义
    [AjaxPro.AjaxMethod]
        public int getString{)
    {
           return "ljfladjfl";    }
    界面上调用:
        var str = message.getString{).value;
      

  7.   

    在cs页面里,你应该把UpdateMessage注册为ajax方法然后在aspx页面使用..AjaxPro.Utility.RegisterTypeForAjax
      

  8.   

    调用是可以,网上有很多相关文章,无刷新就ajax。