Asp.NET 2.0中无刷新页面 提交

14 篇文章 0 订阅

 

事例一:

页面:
<body>
    <form id="form1" runat="server">
        <div>
            <input id="txtMessage" value="Client:" />
            <input οnclick="callToServer();" type="button" value="Call to Server" />
            Result :
            <input id="txtResult" />
        </div>
    </form>
</body>

JS:
<script type="text/javascript">
        function callToServer()
        {
            var param = document.getElementById("txtMessage").value+"dddd";
            //var context = "Client Context";
            <% = CallbackScript %>
            //alert(this.callToServer);
        }

        function handleResultFromServer(result)
        {
            document.getElementById("txtResult").value = result;
        }
    </script>

后台代码:
public partial class _Default : System.Web.UI.Page, ICallbackEventHandler
{
    private string sResult = "";

    protected void Page_Load(object sender, EventArgs e)
    {

    }

    public String CallbackScript
    {
        get
        {
            return this.ClientScript.GetCallbackEventReference(this, "param", "handleResultFromServer", null);
        }
    }

    public void RaiseCallbackEvent(String eventArgument)
    {
        this.sResult = "客户端在[" + DateTime.Now.ToString() + "]传送来 [" + eventArgument + "].";
    }

    public string GetCallbackResult()
    {
        return this.sResult;
    }
}

事例二:

页面+JS:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>无标题页</title>
    <script type="text/javascript">  
         //由button调用
         function CallServer(inputcontrol, context)
         {  
              context.innerHTML = "Loading";
              arg = inputcontrol.value;
              //注册回调方法
              <%= ClientScript.GetCallbackEventReference(this, "arg", "ReceiveServerData", "context")%>;  
          }
          //在回调方法中注册的接收返回结果的函数
          function ReceiveServerData(result, context)  
          {
              context.innerHTML = result;
          }
      </script>

</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <input id="Button1" type="button" value="提交到Label1" οnclick="CallServer(TextBox1, Label1)" /><br />
            <asp:Label ID="Label1" runat="server" Text="Label1:"></asp:Label>
        </div>
    </form>
</body>
</html>


后台代码:
public partial class Default2 : System.Web.UI.Page, ICallbackEventHandler
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }

    private string str;
     public void RaiseCallbackEvent(string eventArgument)
     {
     //可以根据传递的参数不同,调用不同的处理逻辑
           str = "从服务器端返回的内容:" + eventArgument;
     }

     public string GetCallbackResult()
     {
        return str;
     }

}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值