C#代码与javaScript函数的相互调用 (转)

简介: 1C#代码与javaScript函数的相互调用  2  3问:  41.如何在JavaScript访问C#函数?  52.如何在JavaScript访问C#变量?  63.如何在C#中访问JavaScript的已有变量?  74.
1 C#代码与javaScript函数的相互调用
  2
  3 问:
  4 1 .如何在JavaScript访问C#函数 ?
  5 2 .如何在JavaScript访问C#变量 ?
  6 3 .如何在C#中访问JavaScript的已有变量 ?
  7 4 .如何在C#中访问JavaScript函数 ?
  8  
  9 问题1答案如下:
 10 javaScript函数中执行C#代码中的函数:
 11 方法一: 1 、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;
 12          2 、在前台写一个js函数,内容为document.getElementById( " btn1 " ).click();
 13          3 、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;
 14
 15 方法二: 1 、函数声明为public              
 16            后台代码(把public改成protected也可以)
 17             public   string  ss()
 18             {
 19              return("a");
 20           }

 21          2 、在html里用 <%= fucntion() %> 可以调用
 22            前台脚本
 23             < script language = javascript >
 24            var a  =   " <%=ss()%> " ;
 25            alert(a);
 26             </ script >
 27 方法三: 1 < script language = " javascript " >
 28             <!--
 29            function __doPostBack(eventTarget, eventArgument)
 30             {
 31              var theForm = document.Form1;     //指runat=server的form
 32              theForm.__EVENTTARGET.value = eventTarget;
 33              theFrom.__EVENTARGUMENT.value = eventArgument;
 34              theForm.submit();
 35           }

 36             -->
 37             </ script >
 38             < input id = " Button1 "  type = " button "  name = " Button1 "  value = " 按钮 "  onclick = " javascript:__doPostBack('Button1','') " >
 39          
 40 方法四: < script language = " javascript " >
 41 function SubmitKeyClick()
 42 {
 43    if (event.keyCode == 13)
 44    {
 45        event.cancelBubble = true;
 46        event.returnValue = false;
 47        document.all.FunName.value="你要调用的函数名"
 48        document.form[0].submit();
 49    }

 50}

 51 </ script >
 52
 53 < INPUT onkeypress = " SubmitKeyClick() "  id = " aaa "  type = " text " >
 54 < input type = " hidden "  name = " FunName " >  〈! -- 用来存储你要调用的函数  --
 55
 56 在.CS里有:
 57 public  Page_OnLoad()
 58 {
 59if (!Page.IsPost())
 60{
 61string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";
 62//根据传回来的值决定调用哪个函数
 63switch(strFunName)
 64{
 65case "enter()":
 66enter() ; //调用该函数
 67break;
 68case "其他":
 69//调用其他函数
 70break;
 71default:
 72//调用默认函数
 73break;
 74}

 75}

 76}

 77
 78 public   void  enter()
 79 {
 80//……比如计算某值
 81}

 82
 83 问题2.如何在JavaScript访问C#变量 ?
 84 答案如下:
 85 方法一: 1 、通过页面上隐藏域访问 < input id = " xx "  type = " hidden "  runat = " server " >
 86 方法二: 1 、如后台定义了PUBLIC STRING N;前台js中引用该变量的格式为 ' <%=n%> ' " +<%=n%>+ "
 87 方法三: 1 、或者你可以在服务器端变量赋值后在页面注册一段脚本
 88             " <script language='javascript'>var temp= "   +  tmp  +   " </script> "
 89            tmp是后台变量,然后js中可以直接访问temp获得值。
 90
 91
 92 问题 3 .如何在C#中访问JavaScript的已有变量 ?
 93
 94 答案如下:
 95
 96 方法一: 1 、前台使用静态文本控件隐藏域,将js变量值写入其中;
 97          2 、后台用request[ " id " ]来获取值;
 98
 99 方法二:可以用cookie或session
100
101
102 问题4 .如何在C#中访问JavaScript函数 ?
103 答案如下:
104 c#代码中执行javaScript函数:
105 方法一: 1 、Page.RegisterStartupScript( " ggg " , " <script>SetVisible(1);</script> " );
106 方法二:使用Literal类,然后
107 private   void  Button2_Click( object  sender, System.EventArgs e)
108 {
109 string str;
110 str="<script language='javascript'>";
111 str+="selectRange()";
112 str+="</script>";
113 //Literal1.Visible=true;
114 Literal1.Text=str;
115}

116
目录
相关文章
|
2月前
|
JavaScript
短小精悍的js代码
【10月更文挑战第17天】
123 58
|
22天前
|
JavaScript
原生js炫酷随机抽奖中奖效果代码
原生js随机抽奖是一个炫酷的根据数据随机抽奖的代码,该网页可进行随机抽取一个数据,页面动画高科技、炫酷感觉的随机抽奖效果,简单好用,欢迎下载!
40 3
原生js炫酷随机抽奖中奖效果代码
|
22天前
|
JavaScript 前端开发 Java
[JS]同事:这次就算了,下班回去赶紧补补内置函数,再犯肯定被主管骂
本文介绍了JavaScript中常用的函数和方法,包括通用函数、Global对象函数以及数组相关函数。详细列出了每个函数的参数、返回值及使用说明,并提供了示例代码。文章强调了函数的学习应结合源码和实践,适合JavaScript初学者和进阶开发者参考。
36 2
[JS]同事:这次就算了,下班回去赶紧补补内置函数,再犯肯定被主管骂
|
21天前
|
前端开发 JavaScript 开发者
除了 Generator 函数,还有哪些 JavaScript 异步编程解决方案?
【10月更文挑战第30天】开发者可以根据具体的项目情况选择合适的方式来处理异步操作,以实现高效、可读和易于维护的代码。
|
2天前
|
JSON JavaScript 关系型数据库
node.js连接GBase 8a 数据库 并进行查询代码示例
node.js连接GBase 8a 数据库 并进行查询代码示例
|
27天前
|
JavaScript 前端开发 开发者
如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码,包括安装插件、配置 ESLint 和 Prettier 以及 VSCode 设置的具体步骤
随着前端开发技术的快速发展,代码规范和格式化工具变得尤为重要。本文介绍了如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码,包括安装插件、配置 ESLint 和 Prettier 以及 VSCode 设置的具体步骤。通过这些工具,可以显著提升编码效率和代码质量。
265 4
|
29天前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
80 6
|
25天前
|
JavaScript 前端开发 开发者
如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码
随着前端开发技术的快速发展,代码规范和格式化工具变得尤为重要。本文介绍如何在 Visual Studio Code (VSCode) 中使用 ESLint 和 Prettier 检查代码规范并自动格式化 Vue.js 代码。通过安装和配置这些工具,可以确保代码风格一致,提高代码质量和可读性。
56 1
|
1月前
|
C# Python
使用wxpython开发跨平台桌面应用,对wxpython控件实现类似C#扩展函数处理的探究
【10月更文挑战第30天】使用 `wxPython` 开发跨平台桌面应用时,可以通过创建辅助类来模拟 C# 扩展函数的功能。具体步骤包括:1. 创建辅助类 `WxWidgetHelpers`;2. 在该类中定义静态方法,如 `set_button_color`;3. 在应用中调用这些方法。这种方法提高了代码的可读性和可维护性,无需修改 `wxPython` 库即可为控件添加自定义功能。但需要注意显式调用方法和避免命名冲突。
下一篇
无影云桌面