zoukankan      html  css  js  c++  java
  • 用最简单的方法实现Ajax

    Aspx文件:
        <script type="text/javascript">
        
    function callToServer()
        

         
    var param = document.getElementById("txtMessage").value + "&pa"+document.getElementById("a").value;
         
    var context = ""
         document.getElementById(
    "a").value = document.getElementById("a").value;
    //     WebForm_InitCallback();
         <% = callbackScript %>
        }

     
         
    function handleResultFromServer(result)
         

            document.getElementById(
    "txtResult").innerHTML = result;
         }

         
    </script>
        
    <form id="form1" runat="server">
        
    <div><INPUT id="txtMessage" />
        a
    <input id="a" name="a" />
        
    <INPUT onclick="callToServer();" type="button" value="Call to Server" />
        
    <br />
        
    <span style="color:#ff0000"></span>
        Result : 
        
    <div id="txtResult"></div>
        
    </div>
        
    </form>
    Aspx.cs文件:

    public partial class Test : System.Web.UI.Page, System.Web.UI.ICallbackEventHandler
    {
        
    protected string callbackScript
        
    {
            
    get
            
    {
                ClientScriptManager cm 
    = Page.ClientScript;
                
    //return this.GetCallbackEventReference(this, "param", "handleResultFromServer", "context");
                return cm.GetCallbackEventReference(this"param""handleResultFromServer""context");
            }

        }

        
    private string arg = "";

        
    protected void Page_Load(object sender, EventArgs e)
        
    {
        }

        
    public void RaiseCallbackEvent(string eventArgument)
        
    {
            arg 
    = eventArgument + Request["a"];
            
    for (int i = 0; i < Request.Params.Count; i++)
            
    {
                arg 
    += "Name:" + Request.Params.GetKey(i) +":Value:<span style=\"color:#ff0000\">" + Request.Params[i] + "</span><br/>";
            }

        }

        
    public string GetCallbackResult()
        
    {
            
    return "客户端在[" + DateTime.Now.ToString() + "]传送来 [" + arg + "].";
        }

    }

    这里主要是用到了Asp.net自带的 System.Web.UI.ICallbackEventHandler接口。
    实现的这个接口的控件(包括页面)都可以以异步的方式用服务器发送数据。还可以设置一个回调函数。这个方法有两个局限:函数的返回类型只能是字符串类型。方法只有一个参数(可以通过分割字符串实现多个参数,但不安全。)
  • 相关阅读:
    Android 主题theme说明 摘记
    Android开发 去掉标题栏方法 摘记
    安卓项目五子棋代码详解(二)
    关于 ake sure class name exists, is public, and has an empty constructor that is public
    百度地图3.0实现图文并茂的覆盖物
    android onSaveInstanceState()及其配对方法。
    关于集成科大讯飞语音识别的 一个问题总结
    android 关于 webview 控制其它view的显示 以及更改view数据失败的问题总结
    C# 解析 json Newtonsoft果然强大,代码写的真好
    c#数据类型 与sql的对应关系 以及 取值范围
  • 原文地址:https://www.cnblogs.com/heys/p/822770.html
Copyright © 2011-2022 走看看