javascript与c#之间的调用

作者:管理员 更新时间:2013-11-22 10:59

(一)JavaScript访问C#函数  

方法一:

1 、首先建立一个按钮,在后台将调用或处理的内容写入button_click中;

2 、在前台写一个js函数,内容为document.getElementById ("btn1")。click ();

3 、在前台或后台调用js函数,激发click 事件,等于访问后台c#函数;

方法二:

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"> <inputtype="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 (){ //……比如计算某值}

(二) C# 访问javascript函数

方法一:

1 、Page.RegisterStartupScript("ggg" ,"<script>SetVisible (1 );</script>");

方法二:

使用Literal类,然后private void Button2_Click(object sender , System.EventArgse ) { string str;str="<script language='javascript'>";str+="selectRange()" ;str+="</script>";//Literal1.Visible=true ;Literal1.Text=str;}

方法三:

button1.Attributes.Add("onclick" , "return selectRange()" );

(三) C# 访问javascript已有变量

方法一:

1 、前台使用静态文本控件隐藏域,将js变量值写入其中;

2 、后台用request["id"] 来获取值;

(四)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获得值。

来源:亦有软件
软件产品Eysln Software Product
亦有公告Eysln Notice
案例中心Eysln Template
知识库Eysln Knowledge Base
工具箱Eysln Toolkit Online