Asp.net 2.0 脚本回调技术

* 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返回给客户端!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值