javascript与cs代码互访

  这里主要包括了javascipt与后台CS代码四种方法互调(其中包括函数与变量的访问)。

 

  1.JavaScript访问C#函数 

  javaScript函数中执行C#代码中的函数:

  方法一:

  a、比如说新建一个ID为“btn”的Button,在后台cs代码中将调用或处理的内容写入button_click中;

  b、在HTML前台页js中调用:document.getElementById("btn").click();该行code调用后台的button_click事件。

  方法二:

  a、直接在HTML前台页面中调用后台代码,如有以下后台代码:

   

public   string  GetValue()
{
    
return   " return value from .cs code " ;
}

  b、接下来在HTML页面中调用后台方法,如下代码

  

function ShowValue()
{
    var retVal
=<%= GetValue() %> ;   // 后台代码写在<%%>中
    window.alert(retVal);
}

 

 

  2.JavaScript访问C#变量

  方法一:

  a、通过页面上隐藏域访问,可以在后台把c#变量值保存到隐藏文本域当中。

  <input id="xx" type="hidden" runat="server">

  b、然后在前台javascript当中直接取隐藏文本域的值。

   document.getElementById('xx').value

  方法二:

  a、在服务器端变量赋值后在页面注册脚本

  Page.RegisterStartScript(" ","<script language='javascript'>var vary=" + value + "</script>");

  value是后台变量,然后javascript中可以直接访问vary值,它的值就是后台变量value的值,这种方式只不过是能过一种间接的方式来访问c#变量。

 

  3.C#中访问JavaScript的变量

  方法一:

  a、将javascript变量值写入到前台HTML页面使用静态文本控件隐藏域当中;

  b、后台用Request["id"]来获取值;

  方法二:

  可以用cookie或session

 

  4.C#中访问JavaScript函数

  方法一:

  a、Page.RegisterStartupScript("function","<script>你要调用的javascript函数名称;</script>");

  方法二:

  b、使用LiteralControl,如下在Button_Click中调用javascript函数

public   void  Button_Click( object  sender,System.EventArgs e)
{
  LiteralControl li 
=   new  LiteralControl();
  li.Text
= " <script>要调用的javascript函数名称;</script> " ;
  Controls.Add(li);
}

 

 写到这里了,如果你觉得对你有用的话,就顶一下。如有错误,请指出,不甚感激。

你可能感兴趣的:(JavaScript)