原文地址:http://blog.csdn.net/wonsoft/article/details/2595743
一、javascript调用C#代码解决方案
// 第一种情况:
1.后台方法:
-
protectedstringCsharpVoid(stringstrCC)
-
{
-
returnstrCC;
-
}
2.javascript 调用
-
<scriptlanguage="javascript">
-
<!--
-
vars="<%=CsharpVoid("www.baidu.com")%>";
-
document.write(s);
-
-
</script>
// 第二种情况:
1.后代码:
-
protectedvoidCsharpVoid()
-
{
-
stringstrCC="www.baidu.com";
-
Response.Write(strCC);
-
}
2.调用方法:CsharpVoid()
-
<scriptlanguage="javascript">
-
<!--
-
document.write("<%CsharpVoid();%>");
-
//-->
-
</script>
可在页面中放一个按钮,把它设置为不可见style="display:none",然后,用脚本让此按钮点击
-
document.all("button1").click();
在此按钮的C#后台中写事件代码,这就是最简单的脚本调用C#方法.
二、C#与Javascript变量、函数之间的相互调用
问题1:在JavaScript访问C#函数
方法一:
1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;
2、在前台写一个js函数,内容为
-
document.getElementById("btn1").click();
3、在前台或后台调用js函数,激发click事件,等于访问后台c#函数;
方法二:
1、后台代码函数声明为public(protected也可以)
-
publicstringss()
-
{
-
return("a");
-
}
2、前台:在html脚本里用<%=fucntion()%>可以调用
-
<scriptlanguage=javascript>
-
<!--
-
vara="<%=ss()%>";
-
alert(a);
-
//-->
-
</script>
方法三:
-
<scriptlanguage="javascript">
-
<!--
-
function__doPostBack(eventTarget,eventArgument)
-
{
-
vartheForm=document.Form1;//指runat=server的form
-
theForm.__EVENTTARGET.value=eventTarget;
-
theFrom.__EVENTARGUMENT.value=eventArgument;
-
theForm.submit();
-
}
-
//-->
-
</script>
-
<inputid="Button1"type="button"name="Button1"value="按钮"onclick="javascript:__doPostBack('Button1','')"/>
ASPX页面有包含asp:LinkButton或者带有AutoPostBack属性且其值为true的服务器控件时,ASP.NET会自动为页面生成下面的脚本:
-
<inputtype="hidden"name="__EVENTTARGET"id="__EVENTTARGET"value=""/>
-
<inputtype="hidden"name="__EVENTARGUMENT"id="__EVENTARGUMENT"value=""/>
这两个参数分别由隐藏的两个表单域__ EVENTTARGET和__ EVENTARGUMENT保存。
这两个隐藏的表单可以查找引起页面回送的控件ID和回送时的参数:
-
stringtarget=Request.Params["__EVENTTARGET"];
-
stringargs=Request.Params["__EVENTARGUMENT"];
asp:Button和asp:ImageButton不是使用__doPostBack回送页面,所以使用这两个控件回送页面时,上面的代码是无效的。
方法四:1、前台:
-
<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">
2、后台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、如后台定义了:
2、
前台js中引用该变量的格式为
-
'<%=n%>'
-
-
"+<%=n%>+"
-
-
varss="<%=n%>"
方法三:在服务器端变量赋值后在页面注册一段脚本
-
"<scriptlanguage='javascript'>vartemp="+tmp+"</script>"
tmp是后台变量,然后js中可以直接访问temp获得值。
问题3:在C#中访问JavaScript的已有变量
方法一:
1、前台使用静态文本控件隐藏域,将js变量值写入其中;
2、后台用request["id"]来获取值;
方法二:
可以用cookie或session问题4:在C#中访问JavaScript函数
方法一:
-
Page.RegisterStartupScript("ggg","<script>SetVisible(1);
-
</script>");
方法二:
1、前台使用Literal类:
-
<asp:LiteralID="Literal1"runat="server"></asp:Literal>
2、后台CS代码:
-
privatevoidButton2_Click(objectsender,System.EventArgse)
-
{
-
stringstr;
-
str="<mce:scriptlanguage='javascript'><!--
-
";
-
str+="selectRange()";
-
str+="
-
-
-
Literal1.Text=str;
-
}
分享到:
相关推荐
本文将深入探讨如何在C#(后端)与JavaScript(前端)之间进行变量和函数的互相调用,这是一项对于实现动态网页功能至关重要的技能。 ### C#与JavaScript之间的交互 #### 一、C#向JavaScript传递数据 首先,让...
本文将深入探讨C#代码与JavaScript函数的相互调用机制,解析如何在ASP.NET环境中利用这两种语言的优势,构建高效、动态的Web应用。 ### C#调用JavaScript #### 直接插入JavaScript代码 在C#的ASP.NET页面中,可以...
根据给定的信息,本文将详细探讨C#与JavaScript之间的相互调用方法,主要涉及四个方面的内容:如何在JavaScript中访问C#函数、如何在JavaScript中访问C#变量、如何在C#中访问JavaScript已有的变量以及如何在C#中访问...
### C#代码与JavaScript函数的相互调用 #### 1. 如何在JavaScript访问C#函数? 在讨论如何实现JavaScript访问C#函数之前,我们先理解一下这两种语言通常的使用场景。C#常用于服务器端编程,而JavaScript则主要用于...
asp.net后台调用javascript函数、已有变量。 javascript调用后台(.cs文件)的函数、变量。
在IT领域,C#与JavaScript两种语言的相互调用是一个重要的技术点,尤其在Web开发中,这种跨语言调用可以极大地提升应用的灵活性和功能的丰富性。根据提供的文件信息,我们可以深入探讨C#与JavaScript相互调用的几种...
- 方法二:通过Literal控件,在C#代码中动态生成包含JavaScript函数调用的字符串,并添加到页面上。 这些方法都是为了实现前后端的交互,确保数据和逻辑能够在客户端和服务器之间正确传递。在实际应用中,应根据...
下面将详细阐述四种方法来实现JavaScript调用C#函数以及C#访问JavaScript变量和函数。 **1. JavaScript调用C#函数** **方法一:**通过按钮点击事件 在后台,你可以定义一个C#方法,并在按钮的Click事件中处理逻辑...
问题1答案如下: javaScript函数中执行C#代码中的函数: 方法一:1、首先建立一个按钮,在后台将调用或处理的内容写入button_click中; 2、在前台写一个js函数,内容为document.getElementById(“btn1”).click(); 3...
1如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? 4.如何在C#中访问JavaScript函数? 问题1答案如下: javaScript函数中执行C#代码中的函数: 方法一:1、...
C#代码与javaScript函数的相互调用 问: 1.如何在JavaScript访问C#函数? 2.如何在JavaScript访问C#变量? 3.如何在C#中访问JavaScript的已有变量? 4.如何在C#中访问JavaScript函数? 问题1答案如下: javaScript函数中...
本文将详细介绍如何实现前端JavaScript(JS)与后端C#之间的相互调用,这对于构建功能丰富的Web应用至关重要。下面将按照问题的四个要点逐一展开。 #### 1. JavaScript调用C#方法 JavaScript可以通过以下步骤来...
这篇文档主要探讨了四种方法,让JavaScript能够调用C#后台函数,同时也涉及到了C#访问JavaScript变量的可能性。 **方法一:利用事件触发** 这是最基础的方法,通过HTML按钮的点击事件触发后台的C#函数。在C#中定义...
通过以上介绍的方法,我们可以实现 C# 页面与 JavaScript 之间的变量赋值和函数调用等功能。这些技术点不仅适用于 ASP.NET Web Forms 应用程序,对于一些基于 .NET 的混合应用程序也非常有用。掌握这些技巧可以帮助...
- 将JavaScript变量存入Cookie或Session,然后在C#后台通过读取Cookie或Session来访问这些变量。 4. **WebMethod和Ajax** - C#后台可以创建标记为`[WebMethod]`的方法,前端使用Ajax调用这些方法,例如使用jQuery...
以上步骤详细介绍了如何利用JavaScript与C#相结合,在Web应用程序中实现从前端到后端的函数调用。这种方法适用于需要从前端触发后端业务逻辑的场景,例如表单提交、数据查询等。通过这种方式,可以有效提升应用程序...