JS/Cs相互调用

js调用cs中函数的方法   
在前台js代码里写上<%method();%>
      举例:
      cs文件中写的有
      public void method()
      {
           ....执行某些操作.
      }
      这个函数,然后在前台页面的js里面调用.
      <script type="text/javascript">
           <%method();%>
      </script>

在cs中调用js函数
法一:ClientScript.RegisterStartupScript(GetType(), "事件或属性名", "事件或属性内容"); 
   示例:

protected void Page_Load(object sender, EventArgs e)
    {

        string ttt = "ttt"
;

        string js = "<script type='text/javascript'>"
;
        js += "function istwo(m){alert(m);} </script> "
;


        ClientScript.RegisterStartupScript(GetType(), "registerJS"
, js);

        ClientScript.RegisterStartupScript(GetType(), "runJS", "istwo(" + ttt + ")"
); 
     }


法二:控件id.Attributes.Add("事件或属性名", "事件或属性内容");

示例:
btnPost.Attributes.Add("onclick", "return CheckInput()");

法三:直接把js代码当作字符串输出到客户端,让客户端来解释执行。
示例:
Response.Write(" <script>function fun(){alert(" + m + ")} </script>")



======================================================
转: .net中前台javascript与后台c#函数相互调用
文章出处:DIY部落(
http://www.diybl.com/course/1_web/javascript/jsjs/200798/71020.html)
C#代码与javaScript函数的相互调用
问:
1.如何在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#函数;

示例:
JS/Cs相互调用 - picacure - picacure的博客JS/Cs相互调用 - picacure - picacure的博客代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>列表页</title>
<style type="text/css">
      .display
        {
            display:none;
        }
    
</style>
    <script type="text/javascript" language="javascript">
       function Download(sI)
       {
          document.getElementById(
"btn").click();
       }
    </script>

</head>
<body>
    <form id="form1" runat="server">
 <asp:Button ID="btn" runat="server" 
OnClick="btn_Click" Text=""  CssClass="display"" />
//注:此处Button控件不能加Visible="false"来隐藏,只能通过样式
    </form>
</body>
</html>


方法二: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="按钮" οnclick="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 οnkeypress="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的已有变量?
答案如下:
方法一:1、前台使用静态文本控件隐藏域,将js变量值写入其中;
2、后台用request["id"]来获取值;

方法二:可以用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; 
}

转载于:https://www.cnblogs.com/jiangC/archive/2010/08/12/2769083.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/462929.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学习进度_第六周

第六周主要就是针对结对开发项目&#xff0c;又赶上清明节假期&#xff0c;所以学习时间打了些折扣。 编程时间&#xff1a;课上3小时课下5小时。 博客1篇。转载于:https://www.cnblogs.com/flw0322/p/10680226.html

PostgreSQL体系架构

PostgreSQL 使用客户机/服务器&#xff08;C/S&#xff09;的模式提供服务&#xff0c;一个PostgreSQL会话由下列相关的进程&#xff08;程序&#xff09;组成&#xff1a; (1)一个服务器端进程。该进程管理数据库文件&#xff0c;接受客户端与数据库的连接&#xff0c;且代表…

地址运算符:

C语言中的指针&#xff0c;是用来存储变量地址。 int i 34; printf("i %d, address %p",i,&i); i 34, address 0x7fff5fbff85c转载于:https://www.cnblogs.com/sell/archive/2012/12/26/2834174.html

做好一个team leader的几点看法

每年给组员做PR的时候&#xff0c;总会谈及职业规划的问题。也总会被被问到怎样何时才可以做一个lead&#xff0c;为什么自己不能做lead&#xff1f;就从别处收集了一些自己也加了一些作为一个指引。但实际在具体操作时&#xff0c;也是每个manager见仁见智的事情&#xff0c;而…

不要总想着二进制

同事转了一道题&#xff1a; 有 100 支一模一样的瓶子&#xff0c;编号 1-100。其中 99 瓶是水&#xff0c;1 瓶是看起来像水的毒药。 只要老鼠喝下一小口毒药&#xff0c;一天后就会死。 现在你有 7 只老鼠和一天时间&#xff0c;怎么检验出哪个号码的瓶子里是毒药&#xff1f…

C语言打包解包文件程序(简易版)

//测试通过 科嵌电子 #include <stdio.h> #include <string.h> #include <stdlib.h> typedef unsigned int uint; typedef unsigned char byte; // 包文件中最大可容纳的文件个数 #define MAX_FILE_COUNT 10 // 全局包…

突然领悟

突然领悟 用google搜索图标&#xff0c;看桌满屏的图标。突然想到 开源狂热者&#xff0c;想到他们大骂ms的情况。当时是可以认可&#xff0c;但不理解为什么。又突然想到自己对思想古板&#xff0c;守旧的人的痛恨。突然之间全明白了。在软件业自己也不只用微软不。自己其实在…

IPC之九:使用UNIX Domain Socket进行进程间通信的实例

socket 编程是一种用于网络通信的编程方式&#xff0c;在 socket 的协议族中除了常用的 AF_INET、AF_RAW、AF_NETLINK等以外&#xff0c;还有一个专门用于 IPC 的协议族 AF_UNIX&#xff0c;IPC 是 Linux 编程中一个重要的概念&#xff0c;常用的 IPC 方式有管道、消息队列、共…

CH 5102Mobile Service题解

题目&#xff1b; 用动态规划很容易将完成任务量作为dp的阶段&#xff0c;通过指派服务员&#xff0c;从当前i-1个任务转移到i个任务&#xff1b; 我们可以用一个四维数组f[i][x][y][z]来表示在完成当前任务i时&#xff0c;三个机器人分别在x&#xff0c;y&#xff0c;z的位置&…

Postgres主进程文件—postmaster.pid

postmaster内容 使用cat -n 命令可以查看postmaster.pid文件内容&#xff1a; ) 根据每一行进行解释&#xff0c;并给出对应的源代码说明 13795: 代表Postgres主进程的PID/usr/local/pgsql/data: 代表数据目录 1529235109&#xff1a; 代表postmaster文件的创建时间。 54…

百度这个疯子

今天在搜索软件的时候&#xff0c;因为天朝无耻的屏蔽打压Google&#xff0c;所以万不得已在Bing和BaiDu之间徘徊&#xff0c;居然看到百度弄出来一个软件搜索&#xff0c;能够按照名称搜索手机软件和电脑软件&#xff0c;有点那么意思&#xff0c;我不知道他是如何绕开盗版这个…

Mysql 中 delete 与 left join 的问题

今天在一个程序后台删除一个东西的时候&#xff0c;却出现了这个问题&#xff1a; 在Google搜索了大约1小时候&#xff0c;终于找到了原因&#xff0c;解决起来非常简单&#xff1a; 增加一个T.*就搞定了。 故障分析&#xff1a;因为Insert、Update、Delete三个参数&#xff0c…

Razor Generator

https://marketplace.visualstudio.com/items?itemNameDavidEbbo.RazorGenerator 转载于:https://www.cnblogs.com/macT/p/10670205.html

2020年简单总结

致敬自己&#xff0c;勇敢向前&#xff0c;不畏艰苦&#xff0c;好好工作&#xff0c;好好生活&#xff0c;好好对待家人 2020年即将成为过去&#xff0c;2021年终将到来&#xff0c;在这剩余不到最后10小时的时间里&#xff0c;总结下2020年的得与失。 2020年的一场疫情打破…

Oracle常用的几个父栓

Oracle中的父闩大致可以分成2类&#xff1a;有子闩的父闩或者独居的父闩&#xff0c;我们来看看这些父闩的属性: SQL> select * from v$version; BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release…

web架构设计经验分享

2019独角兽企业重金招聘Python工程师标准>>> 本人作为一位web工程师&#xff0c;着眼最多之处莫过于 性能与架构&#xff0c;本次幸得参与sd2.0大会&#xff0c;得以与同行广泛交流,于此二方面&#xff0c;有些心得&#xff0c;不敢独享&#xff0c;与众博友分享&am…

保护可执行程序的一种方法

rar zip压缩有密码打开 运行 转载于:https://www.cnblogs.com/hshy/p/10670277.html

彻底理清重载函数匹配

前言 前面我们讲到了《什么是函数重载&#xff1f;》&#xff0c;有了函数重载之后&#xff0c;就需要确定某次调用需要选用哪个函数。这个过程可以称之为函数匹配或者重载确定。大多数情况下&#xff0c;我们都很容易能够确定某次调用需要选用哪个函数&#xff0c;但事实上不…

GPRS底层API(转)

【API函数】&#xff1a;a)ConnMgrApiReadyEvent&#xff08;&#xff09;函数函数原型&#xff1a;HANDLE WINAPI ConnMgrApiReadyEvent();利用此函数来我们可以返回一个连接事件的句柄&#xff0c;注意在的得到句柄后要记得及时释放b)ConnMgrConnectionStatus&#xff08;&am…

js和jquery书籍

开始学习js了&#xff0c;找了基本书&#xff0c;留着看。 http://www.cnblogs.com/xiao_luobo/archive/2010/12/03/1895270.html http://blog.csdn.net/rodjohnsondoctor/article/details/7610688 基础类《高效能人士的7个习惯》&#xff08;推荐给所有刚刚进入职场的新人&…