手机
当前位置:查字典教程网 >编程开发 >C#教程 >.net中前台javascript与后台c#函数相互调用问题
.net中前台javascript与后台c#函数相互调用问题
摘要:C#代码与javaScript函数的相互调用问:1.如何在JavaScript访问C#函数?2.如何在JavaScript访问C#变量?3....

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#函数;

方法二:1、函数声明为public

后台代码(把public改成protected也可以)

publicstringss()

{

return("a");

}

2、在html里用<%=fucntion()%>可以调用

前台脚本

<scriptlanguage=javascript>

vara="<%=ss()%>";

alert(a);

</script>

方法三:1、<scriptlanguage="javascript">

<>

</script>

<inputid="Button1"type="button"name="Button1"value="按钮"onclick="javascript:__doPostBack('Button1','')">

方法四:<scriptlanguage="javascript">

functionSubmitKeyClick()

{

if(event.keyCode==13)

{

event.cancelBubble=true;

event.returnValue=false;

document.all.FunName.value="你要调用的函数名";

document.form[0].submit();

}

}

</script>

<INPUTonkeypress="SubmitKeyClick()"id="aaa"type="text">

<inputtype="hidden"name="FunName">〈!--用来存储你要调用的函数--〉

在.CS里有:

publicPage_OnLoad()

{

if(!Page.IsPost())

{

stringstrFunName=Request.Form["FunName"]!=null?Request.Form["FunName"]:"";

//根据传回来的值决定调用哪个函数

switch(strFunName)

{

case"enter()":

enter();//调用该函数

break;

case"其他":

//调用其他函数

break;

default:

//调用默认函数

break;

}

}

}

publicvoidenter()

{

//……比如计算某值

}

问题2.如何在JavaScript访问C#变量?

答案如下:

方法一:1、通过页面上隐藏域访问<inputid="xx"type="hidden"runat="server">

方法二:1、如后台定义了PUBLICSTRINGN;前台js中引用该变量的格式为'<%=n%>'或"+<%=n%>+"

方法三:1、或者你可以在服务器端变量赋值后在页面注册一段脚本

"<scriptlanguage='javascript'>vartemp="+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类,然后

privatevoidButton2_Click(objectsender,System.EventArgse)

{

stringstr;

str="<scriptlanguage='javascript'>";

str+="selectRange()";

str+="</script>";

//Literal1.Visible=true;

Literal1.Text=str;

}

【.net中前台javascript与后台c#函数相互调用问题】相关文章:

C#操作目录与文件的方法步骤

c# 引用类型和值类型

c#循环中产生伪随机数

C#连接db2数据库的实现方法

常用类之TCP连接类-socket编程

C#中List〈string〉和string[]数组之间的相互转换

基于集合的子集与集合的全排列的相关问题

winform调用javascript的小例子

C#可选参数的相关使用

c#动态调用Webservice的两种方法实例

精品推荐
分类导航