Asp.net 2.0 脚本回调技术

本文介绍ASP.NET 2.0中脚本回调技术的应用,包括实现System.Web.UI.ICallbackEventHandler接口的方法,客户端与服务器端交互的具体步骤及示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

* Asp.net 2.0 脚本回调技术:
 * 首先,该页需要实现 System.Web.UI.ICallbackEventHandler 接口

public partial class Default3 : System.Web.UI.Page, System.Web.UI.ICallbackEventHandler;
{

    
public string PostStr;
    
protected void Page_Load(object sender, EventArgs e)
    
{
       
    }


    
public void RaiseCallbackEvent(string eventArgument)
    
{
         PostStr 
= eventArgument; //客户端传入
    }


    
public string GetCallbackResult()
    
{
        
return  PostStr; // 返回客户端,由客户端函数第一个参数接收该返回值
    }

}


 *
 * 其次,实现接口函数
 * 
 * 1.接受客户端触发的函数 public void RaiseCallbackEvent(string eventArgument);
 *  eventArgument 为客户端传入的参数
 *
 * 2.回传到客户端的函数 public string GetCallbackResult().
 *
 * 最后,要注册脚本
 *
 * 调用Page.ClientScript.GetCallbackEventReference(...) 获取客户端响应函数。
 * 客户端代码如下
 *

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default3.aspx.cs" Inherits="Default3" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>无标题页</title>
<script language="javascript" type="text/javascript">
// <!CDATA[

function Button1_onclick() 
{

   var message
=document.getElementById("TextBox1").value;
   var context
='';
   
<%= Page.ClientScript.GetCallbackEventReference(this,"message""CallServer","context"%>


     
}


function CallServer(result, context)
{
  Label1.innerText 
= result;
}

// ]]>
</script>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
        
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
        
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        
<input id="Button1" type="button" value="button" onclick="return Button1_onclick()" /></div>
    
</form>
</body>
</html>


 * 后台需要一个字符串postStr 沟通两个接口函数
 *  此实例用message 传递客户端参数,用postStr 传递后台返回数据,此处传递的是Textbox1的内容到服务器端,再将此值赋给postStr, 通过GetCallbackResult返回给客户端!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值