javascript與cs代碼互訪

來源:互聯網
上載者:User

  這裡主要包括了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);
}

 

 寫到這裡了,如果你覺得對你有用的話,就頂一下。如有錯誤,請指出,不甚感激。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.