zoukankan
html css js c++ java
ASP.NET2.0 ClientCallback脚本回调 [转]
现在AJAX很火,不要忘记ASP.NET2.0自带的ClientCallback,也是非常好用!
现在我来讲一讲ClientCallback简单实现:
1
.首先在aspx.cs文件Page类增加ICallbackEventHandler接口
public
partial
class
_Default : System.Web.UI.Page, ICallbackEventHandler
ICallbackEventHandler接口在ClientCallback非常重要的,我们来看一下ICallbackEventHandler接口到底有什么东西:
名称 说明
string
GetCallbackResult() 返回以控件为目标的回调事件的结果。
void
RaiseCallbackEvent(
string
eventArgument) 处理以控件为目标的回调事件。eventArgument参数:表示要传递到事件处理程序的事件参数。
2
.要实现脚本回调当然要写脚本:
//
触发事件js
string
cbref
=
Page.ClientScript.GetCallbackEventReference(
this
,
"
arg
"
,
"
JSCallback
"
,
"
context
"
);
string
cbScr
=
string
.Format(
"
function UseCallBack(arg, context) {{ {0}; }}
"
, cbref);
Page.ClientScript.RegisterClientScriptBlock(
this
.GetType(),
"
UseCallBack
"
, cbScr,
true
);
这段代码是通过代码RegisterClientScriptBlock设置触发脚本回调事件函数、回调函数、异常处理函数。UseCallBack(arg, context)函数: 触发服务端事件函数; arg是要传递到事件处理程序的事件参数,context是上下文参数(很少用到,可以在下面JSCallback回调函数中得到此值,但我在服务端得不到此值,请高手解答)
//
回调js
string
context1
=
"
<script type=\
"
text
/
javascript\
"
>function JSCallback(arg, context) { document.forms[0].TextBox1.value = arg; window.alert(context); }</script>
"
;
Page.ClientScript.RegisterClientScriptBlock(
this
.GetType(),
"
JSCallback
"
, context1);
这段代码是通过代码RegisterClientScriptBlock注册回调后的js,也可以直接写到网页里。回调js的用处:
JSCallback(arg, context) 函数: js里JSCallback函数是处理服务端返回的参数(例如:返回xml参数,经过处理后显示下拉框里)。
ClientCallback运行流程:
当页面执行UseCallBack(arg, context),就自动到服务端运行RaiseCallbackEvent(
string
eventArgument),然后是GetCallbackResult(),最后执行页面JSCallback(arg, context) 函数。
3
.选择一个触发事件的条件:
就是让页面执行触发服务端事件函数。例如:Button2.Attributes.Add(
"
onclick
"
,
"
UseCallBack('GYF','GYF2');
"
);
哈哈,这样实现了无刷新了,很简单吧!本人写作水平很有限。
详细看代码:
代码下载
查看全文
相关阅读:
ThinkPHP 3 的CURD管理用户信息 修改和删除
检测一个字符串是否为一个有效的编码格式字符串
将Buffer对象结合创建为一个新的Buffer对象
Buffer.byteLength(字符串,编码方式)计算指定字符串的字节数
TypeError: Buffer.allocUnsafe is not a function
多个haproxy 之间跳转
TypeError: Identifier 'assert' has already been declared
14.5.7 Storing InnoDB Undo Logs in Separate Tablespaces 存储InnoDB Undo logs 到单独的表空间
14.5.5 Creating a File-Per-Table Tablespace Outside the Data Directory
php session 管理
原文地址:https://www.cnblogs.com/kokoliu/p/656263.html
最新文章
14.6.2 Moving or Copying InnoDB Tables to Another Machine 移动或者copy InnoDB 表到另外的机器
tomcat path设置
14.6.1 Creating InnoDB Tables 创建InnoDB 表:
mysql iot 主键自增列问题
perl 定义post接口
perl 异步请求和JS对比
基于地产的消费生态群构想
基于地产的消费生态群构想
异步本身不会超时 报错
十年前给自己的生日礼物——北漂18年(61)
热门文章
readFile读取文件
CURD演示 2
测试关闭mojo utf-8
mojo 关闭utf8
mojo 默认启用utf-8
perl lwp 默认的请求头
Error: Cannot find module 'express'
redis 获取key 过期时间
perl 使用cookie
perl lwp 获取请求头
Copyright © 2011-2022 走看看