| 订阅 | 在线投稿
分享
 
 
当前位置: 王朝网络 >> asp >> JavaScript 调用 Asp.Net 服务器端的事件
 

JavaScript 调用 Asp.Net 服务器端的事件

2008-09-09 07:29:14 编辑來源:互联网 繁體版 评论
 
 
  可以用以下变通的方法实现用JavaScript调用服务器端的事件方法

  2 1、增加如下JavaScript方法

  3 这个就是将Asp.Net 中生成的脚本Copy过来,嘿嘿,很贼哦。

  4 function __doPostBack(eventTarget, eventArgument)

  5 {

  6 var theform;

  7 if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1)

  8 {

  9 theform = document.Form1;

  10 }

  11 else

  12 {

  13 theform = document.forms["Form1"];

  14 }

  15 theform.__EVENTTARGET.value = eventTarget.split("$").join(":");

  16 theform.__EVENTARGUMENT.value = eventArgument;

  17 theform.submit();

  18 }

  19

  20 //以下就是要从JavaScript中通知服务器端,你该干活了

  21 function NotifyServer()

  22 {

  23 //.可以做一些设置,判断

  24

  25 Button1是服务器控件的ID,'abc' 可以自己设置,这个我需要给服务器传递一些消息数据,平时直接用'即可

  26 __doPostBack('Button1','abc')

  27 }

  28

  29 2、aspx 页面

  30 要增加 以下两个隐藏字段

  31 <input type="hidden" name="__EVENTTARGET">

  32 <input type="hidden" name="__EVENTARGUMENT">

  33

  34 <asp:Button id="Button1" runat="server" Text="Button" Visible="False"></asp:Button>

  35

  36 这里就是要执行Button1 的后台代码,同时要将他的Visible 设置成 False ,(虽然资料说 不能将Enable 设置成False,但是我试了一下 将Enabled设置成False还是可以用的

  37

  38 同时增加一个

  39 <input type="button" id="but" onclick="NotifyServer()" value="ServerExecute"> ,执行服务器代码

  40

  41 3、aspx.vb 页面代码

  42 Response.Write("alert('" & Request("__EVENTARGUMENT").ToString() & "'"); ")

  43 这里的Request("__EVENTARGUMENT").ToString() 就是'abc'的内容

  44

  45 4、注意事项

  46 用此种方法,页面中不能有AutoPost=True 的服务器控件,因为有AutoPost=True的控件的页面系统会自动生成以上的代码(2个hidden控件,还有一个__doPostBack函数),如果你的页面中 有AutoPost=True的服务器控件,那么你不需要加以上的代码(2个hidden控件,还有一个__doPostBack函数),直接用__doPostBack函数吧
 
 
 
 
上一篇《透彻掌握ASP分页技术》
下一篇《ASP.NET中前台javascript与后台代码调用》
 
 
 
 
 
 
 
 
 
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

如何磨出破洞牛仔裤?牛仔裤怎么剪破洞?

把牛仔裤磨出有线的破洞 1、具体工具就是磨脚石,下面垫一个硬物,然后用磨脚石一直磨一直磨,到把那块磨薄了,用手撕开就好了。出来的洞啊很自然的。需要猫须的话调几...

我就是扫描下图得到了敬业福和爱国福

先来看下敬业福和爱国福 今年春节,支付宝再次推出了“五福红包”活动,表示要“把欠大家的敬业福都还给大家”。 今天该活动正式启动,和去年一样,需要收集“五福”...

冰箱异味产生的原因和臭味去除的方法

有时候我们打开冰箱就会闻到一股异味,冰箱里的这种异味是因为一些物质发出的气味的混合体,闻起来让人恶心。 产生这些异味的主要原因有以下几点。 1、很多人有这种习...

 
 
 
可以用以下变通的方法实现用JavaScript调用服务器端的事件方法 2 1、增加如下JavaScript方法 3 这个就是将Asp.Net 中生成的脚本Copy过来,嘿嘿,很贼哦。 4 function __doPostBack(eventTarget, eventArgument) 5 { 6 var theform; 7 if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1) 8 { 9 theform = document.Form1; 10 } 11 else 12 { 13 theform = document.forms["Form1"]; 14 } 15 theform.__EVENTTARGET.value = eventTarget.split("$").join(":"); 16 theform.__EVENTARGUMENT.value = eventArgument; 17 theform.submit(); 18 } 19 20 //以下就是要从JavaScript中通知服务器端,你该干活了 21 function NotifyServer() 22 { 23 //.可以做一些设置,判断 24 25 Button1是服务器控件的ID,'abc' 可以自己设置,这个我需要给服务器传递一些消息数据,平时直接用'即可 26 __doPostBack('Button1','abc') 27 } 28 29 2、aspx 页面 30 要增加 以下两个隐藏字段 31 <input type="hidden" name="__EVENTTARGET"> 32 <input type="hidden" name="__EVENTARGUMENT"> 33 34 <asp:Button id="Button1" runat="server" Text="Button" Visible="False"></asp:Button> 35 36 这里就是要执行Button1 的后台代码,同时要将他的Visible 设置成 False ,(虽然资料说 不能将Enable 设置成False,但是我试了一下 将Enabled设置成False还是可以用的 37 38 同时增加一个 39 <input type="button" id="but" onclick="NotifyServer()" value="ServerExecute"> ,执行服务器代码 40 41 3、aspx.vb 页面代码 42 Response.Write("alert('" & Request("__EVENTARGUMENT").ToString() & "'"); ") 43 这里的Request("__EVENTARGUMENT").ToString() 就是'abc'的内容 44 45 4、注意事项 46 用此种方法,页面中不能有AutoPost=True 的服务器控件,因为有AutoPost=True的控件的页面系统会自动生成以上的代码(2个hidden控件,还有一个__doPostBack函数),如果你的页面中 有AutoPost=True的服务器控件,那么你不需要加以上的代码(2个hidden控件,还有一个__doPostBack函数),直接用__doPostBack函数吧
󰈣󰈤
 
 
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
追忆.绯红色的审判
新竹的果子风
热裤女孩
凯宾斯基酒店随拍
金色草原
菜园小品
情人谷
广东惠州—巽寮湾的海景
 
>>返回首页<<
 为你推荐
 
 
 转载本文
 UBB代码 HTML代码
复制到剪贴板...
 
 热帖排行
 
 
 
 
©2005- 王朝网络 版权所有