Call JavaScript With Jquery In Server-Side

简介:
后台代码
1
2
3
4
5
6
7
8
9
private  string  getjQueryCode( string  jsCodetoRun)
{
     StringBuilder sb = new  StringBuilder();
     sb.AppendLine( "$(document).ready(function() {" );
     sb.AppendLine(jsCodetoRun);
     sb.AppendLine( " });" );
 
     return  sb.ToString();
}

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
private  void  runjQueryCode( string  jsCodetoRun)
{
 
     ScriptManager requestSM = ScriptManager.GetCurrent( this );
     if  (requestSM != null  && requestSM.IsInAsyncPostBack)
     {
         ScriptManager.RegisterClientScriptBlock( this ,
                                                 typeof (Page),
                                                 Guid.NewGuid().ToString(),
                                                 getjQueryCode(jsCodetoRun),
                                                 true );
     }
     else
     {
         ClientScript.RegisterClientScriptBlock( typeof (Page),
                                                Guid.NewGuid().ToString(),
                                                getjQueryCode(jsCodetoRun),
                                                true );
     }
}

前台代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<asp:ScriptManager ID= "sm"  runat= "server" >
</asp:ScriptManager>
<asp:UpdatePanel ID= "upPnl"  runat= "server" >
     <ContentTemplate>
         <asp:Button ID= "btnPostback"  runat= "server"
                     Text= "Standard Postback"
                     OnClick= "btnPostback_Click"  />
         <asp:Button ID= "btnAsynchPostback"  runat= "server"
                     Text= "Asynchronous Postback"
                     OnClick= "btnAsynchPostback_Click"  />
     </ContentTemplate>
     <Triggers>
         <asp:PostBackTrigger ControlID= "btnPostback"  />
     </Triggers>
</asp:UpdatePanel>

 

调用示例

同步

1
2
3
4
5
6
7
8
9
protected  void  btnPostback_Click( object  sender, EventArgs e)
{
     runjQueryCode( "alert('After a standard postback.')" );
}
异步
protected  void  btnAsynchPostback_Click( object  sender, EventArgs e)
{
     runjQueryCode( "alert('After an asynchronous postback.')" );
}
本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2009/11/05/1596601.html如需转载请自行联系原作者

王德水
相关文章
|
JavaScript
鼠标事件(点击换色)分别使用js和jQuery代码实现
鼠标事件(点击换色)分别使用js和jQuery代码实现
147 1
|
前端开发 JavaScript 开发者
揭秘JavaScript魔法三剑客:call、apply、bind,解锁函数新世界,你的前端之路因它们而精彩!
【8月更文挑战第23天】在 JavaScript 的世界里,`call`、`apply` 和 `bind` 这三个方法常常让新手感到困惑。它们都能改变函数执行时的上下文(即 `this` 的指向),但各有特点:`call` 接受一系列参数并直接调用函数;`apply` 则接收一个参数数组,在处理不确定数量的参数时特别有用;而 `bind` 不会立即执行函数,而是创建一个新版本的函数,其 `this` 上下文已被永久绑定。理解这三个方法能帮助开发者更好地运用函数式编程技巧,提升代码灵活性和可维护性。
220 0
|
12月前
|
JSON JavaScript 数据格式
jqtimeline.js-简单又好用的jquery时间轴插件
jqtimeline.js-简单又好用的jquery时间轴插件
|
JavaScript 前端开发
js+jquery实现贪吃蛇经典小游戏
本项目采用HTML、CSS、JavaScript和jQuery技术,无需游戏框架支持。通过下载项目文件至本地,双击index.html即可启动贪吃蛇游戏。游戏界面简洁,支持方向键控制蛇移动,空格键实现游戏暂停与恢复功能。
450 14
|
JavaScript 前端开发
js中的bind,call,apply方法的区别以及用法
JavaScript中,`bind`、`call`和`apply`均可改变函数的`this`指向并传递参数。其中,`bind`返回一个新函数,不立即执行;`call`和`apply`则立即执行,且`apply`的参数以数组形式传递。三者在改变`this`指向及传参上功能相似,但在执行时机和参数传递方式上有所区别。
414 1
|
JavaScript 前端开发
JS高级—call(),apply(),bind()
【10月更文挑战第17天】call()`、`apply()`和`bind()`是 JavaScript 中非常重要的工具,它们为我们提供了灵活控制函数执行和`this`指向的能力。通过合理运用这些方法,可以实现更复杂的编程逻辑和功能,提升代码的质量和可维护性。你在实际开发中可以根据具体需求,选择合适的方法来满足业务需求,并不断探索它们的更多应用场景。
197 1
|
JavaScript 前端开发 开发者
jQuery:JavaScript库的瑰宝
jQuery:JavaScript库的瑰宝
334 3
|
JavaScript 前端开发
js 中call()和apply()
js 中call()和apply()
124 1
|
JavaScript 前端开发
JavaScript - 测试 jQuery
JavaScript - 测试 jQuery
115 1
|
自然语言处理 JavaScript 前端开发
JS中this的应用场景,再了解下apply、call和bind!
该文章深入探讨了JavaScript中`this`关键字的多种应用场景,并详细解释了`apply`、`call`和`bind`这三个函数方法的使用技巧和差异。