JS和CS互访【后台前台代码调用JavaScript变量以及JavaScript调用代码变量】
原文发布时间为:2008-10-13 —— 来源于本人的百度文章 [由搬家工具导入]
.如何在JavaScript访问C#函数? 
2.如何在JavaScript访问C#变量? 
3.如何在C#中访问JavaScript的已有变量? 
4.如何在C#中访问JavaScript函数?
问题1答案如下: 
javaScript函数中执行C#代码中的函数: 
方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中; 
2、在前台写一个js函数,内容为document.getElementById("btn1").click();    
3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;
(若想让Button1在页面上不显示,则嵌套一个div 显示设置成不显示,不能使用visable=false,因为用visable=false时,getElementById可能找不到Button1)
      <script type="text/javascript">
     function Bind()
     {
      document.getElementById("Button1").click();
      }
     </script>
<a id="div1" href="#" onclick="Bind()">无刷新更改 隐藏的button触发</a>
        <div style="display:none">
         <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click"/>
         </div>
方法二:1、函数声明为public 
后台代码(把public改成protected也可以) 
public string ss() 
{ 
return("a"); 
} 
2、在html里用 <%=fucntion()% >可以调用 
前台脚本 
<script language=javascript > 
var a = " <%=ss()% >"; 
alert(a); 
</script > 
方法三:1、 <script language="javascript" > 
<!-- 
function __doPostBack(eventTarget, eventArgument) 
{ 
var theForm = document.Form1; //指runat=server的form 
theForm.__EVENTTARGET.value = eventTarget; 
theFrom.__EVENTARGUMENT.value = eventArgument; 
theForm.submit(); 
} 
-- > 
</script > 
<input id="Button1" type="button" name="Button1" value="按钮" onclick="javascript:__doPostBack( 'Button1 ', ' ')" >
方法四: <script language="javascript" > 
function SubmitKeyClick() 
{ 
if (event.keyCode == 13) 
{ 
event.cancelBubble = true; 
event.returnValue = false; 
document.all.FunName.value="你要调用的函数名"; 
document.form[0].submit(); 
} 
} 
</script >
<INPUT onkeypress="SubmitKeyClick()" id="aaa" type="text" > 
<input type="hidden" name="FunName" > 〈!--用来存储你要调用的函数 --〉
在.CS里有: 
public Page_OnLoad() 
{ 
if (!Page.IsPost()) 
{ 
string strFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:""; 
//根据传回来的值决定调用哪个函数 
switch(strFunName) 
{ 
case "enter()": 
enter() ; //调用该函数 
break; 
case "其他": 
//调用其他函数 
break; 
default: 
//调用默认函数 
break; 
} 
} 
}
public void enter() 
{ 
//……比如计算某值 
}
问题2.如何在JavaScript访问C#变量? 
答案如下: 
方法一:1、通过页面上隐藏域访问 <input id="xx" type="hidden" runat="server" > 
方法二:1、如后台定义了PUBLIC STRING N;前台js中引用该变量的格式为 ' <%=n% > '或"+ <%=n% >+" 
方法三:1、或者你可以在服务器端变量赋值后在页面注册一段脚本 
" <script language= 'javascript ' >var temp=" + tmp + " </script >" 
tmp是后台变量,然后js中可以直接访问temp获得值。
3.如何在C#中访问JavaScript的已有变量?
答案如下:
方法一:推荐使用控件
在JS中添加代码
document.getElementById("HiddenField1").value = '风中追风';
在后台代码中,可以直接使用HiddenField1.Value取得
使用
在后台代码中,可以直接使用leslie.Value取得
方法二:可以用cookie或session
4.如何在C#中访问JavaScript函数? 
答案如下: 
c#代码中执行javaScript函数: 
方法一:1、Page.RegisterStartupScript("ggg"," <script >SetVisible(1); </script >"); 
方法二:使用Literal类,然后 
private void Button2_Click(object sender, System.EventArgs e) 
{ 
string str; 
str=" <script language= 'javascript ' >"; 
str+="selectRange()"; 
str+=" </script >"; 
//Literal1.Visible=true; 
Literal1.Text=str; 
}
JS和CS互访【后台前台代码调用JavaScript变量以及JavaScript调用代码变量】的更多相关文章
- 转载 -- 基于原生JS与OC方法互相调用并传值(附HTML代码)
		最近项目里面有有个商品活动界面,要与web端传值,将用户在网页点击的商品id 传给客户端,也就是js交互,其实再说明白一点就是方法的互相调用而已. 本文叙述下如何进行原生的JavaScript交互 本 ... 
- js与asp.net后台交互
		1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? 4.如何在C#中访问JavaScript函数? 问题1 ... 
- ASP.net关于C#代码与javaScript函数的相互调用
		C#代码与javaScript函数的相互调用 问:1.如何在JavaScript访问C#函数?2.如何在JavaScript访问C#变量?3.如何在C#中访问JavaScript的已有变量?4.如何在 ... 
- aspx 页面中  js  引用与页面后台的数据交互 --【 js 调后台】
		后台调用 js 方法 前台调用后台方法与变量: 后台被调用的方法必须是public 或 protected 后台被调用的方法必须是静态的static 方法一:通过WebService来实现 步骤: ... 
- 将dedecms织梦后台编辑器ckeditor更换为kindeditor,并高亮显示代码
		1.下载kindeditor,并解压到kindeditor目录,把kindeditor目录复制到dede的include目录下(ps:修改kindeditor-all-min.js.lang文件夹下z ... 
- thinkphp在前端页面的js代码中可以使用 U方法吗? 可以使用模板变量如__URL__等吗?
		thinkphp在前端页面的js代码中可以使用 U方法吗? : 可以的! tp的U方法, 是"全局的", 什么是全局的? 就是, 可以在 "任何地方"使用的: ... 
- jsp中的js嵌入Extjs与后台action交互
		近期做前台须要和后台交互数据,直接使用js一直没实现.最后使用extjs实现了,extjs代码直接嵌入到jsp的js代码中就可以(0跟jsp里使用extjs一样,须要载入extjs的几个文件) < ... 
- 如何使用Vue.js来搭建一个后台管理系统
		目录 使用的技术 基础但不好版 1.初始化项目 2.实现初始页内容自定义 3.使用路由 原始代码 自建页面 修改路由 4.测试路由跳转 补充 子路由版 嵌套router-view 定义子路由 修改菜单 ... 
- JS中的间歇(周期)调用setInterval()与超时(延迟)调用setTimeout()相关总结
		超时调用需要使用window.setTimeout(code,millisec)方法 它接受两个参数:要执行的代码和以毫秒表示的时间(即在执行代码前需要等待多少毫秒).其中第一个参数可以是一个包含JS ... 
随机推荐
- C++内存管理(effective c++ 04)
			阅读effective c++ 04 (30页) 提到的static对象和堆与栈对象.看了看侯老师的内存管理视频1~3.有点深. 了解一下. 目录 1 内存管理 1.1 C++内存管理详解 1.1.1 ... 
- NOIP2013 乌龟棋
			描述 小明过生日的时候,爸爸送给他一副乌龟棋当作礼物. 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数).棋盘第1格是唯一的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点 ... 
- Linux - NodeJS安装
			1> 去NodeJS官网 https://nodejs.org/en/ 或 中文网 http://nodejs.cn/download/ 拷贝相应版本的安装文件,如下图: 2> 执行 wg ... 
- svn提交报错,提示:locked,需要cleanup
			版权声明:本文为博主原创文章,未经博主允许不得转载. 原文地址: https://www.cnblogs.com/poterliu/p/9285137.html 在使用SVN提交代码或更新代码时经常会 ... 
- vue实现与安卓、IOS交互
			方案背景 IOS用的是jsBridge插件实现调用.传参.回调的 安卓是在window挂载方法和挂载回调的 IOS实现方案 调用原生方法封装如下 function setupWebViewJavasc ... 
- RSA非对称加密算法实现过程
			RSA非对称加密算法实现过程 非对称加密算法有很多,RSA算法就是其中比较出名的算法之一,下面是具体实现过程 <?php /** */ class Rsa { /** * private key ... 
- REST Framework 处理一个超链接序列化问题
			问题简述 翻译: 不正确的配置 无法使用视图名称“snippet-detail”解析超链接关系的URL.您可能没有在API中包含相关的模型,或者在该字段上错误地配置了' lookup field '属 ... 
- jsp内置对象及其方法
			JSP中一共预先定义了9个这样的对象,分别为: request. response. session. application. out. pagecontext. con ... 
- 爬虫之scrapy工作流程
			Scrapy是什么? scrapy 是一个为了爬取网站数据,提取结构性数据而编写的应用框架,我们只需要实现少量代码,就能够快速的抓取到数据内容.Scrapy 使用了 Twisted['twɪstɪd] ... 
- 命令行执行Qt程序
			原文网址 //helloworld.cpp #include <QApplication> #include <QPushButton> int main(int argc,c ... 
