2012-11-01 77 views
0

請問我能否在ASP.NET Web應用程序中從JavaScript代碼調用C#事件或方法?從javascript代碼調用c#事件

+3

如果你在談論從瀏覽器中運行一些C#您的服務器上,你可以做到這一點從一個Ajax調用客戶端到服務器。如果你在談論別的東西,請解釋一下,因爲瀏覽器中沒有C#。 – jfriend00

+0

您可以輕鬆地將該方法放入Web服務中,並使用AJAX調用調用該方法,或者使用可以使用Page方法。 –

+0

我自己找到了答案,可以做到--jquery可以理解asp.net控件,而jquery實際上是javascript。不確定事件和方法,但這仍然有用。謝謝你們。 –

回答

0

你不能。 C#在服務器端執行,而JavaScript在客戶端(瀏覽器)執行。

+1

你可以用AJAX ... –

2

您不能直接執行C#事件或方法。你可以通過AJAX點擊一個端點。這可能是一個ASP.NET MVC控制器或一個.ashx處理程序。

或者你可以看看如何實現像SignalR,它通過它的集線器,可以讓你做神奇的東西,從JavaScript(從服務器,推之類的通知和事物。)

0

是一個可以調用從javascriptC# Methodasp.net webforms也使用ajax可以做,在asp.net MVC

例如這裏是web forms例如

<script type="text/javascript"> 
    $(document).ready(function() { 

    $.ajax({ 
     type: "POST", 
     url: "Default.aspx/GetData", 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function (response) { 
      alert(response.d); 
     }, 
     failure: function (response) { 
      alert(response.d); 
     } 
    }); 
}); 
</script> 

背後c# method

[WebMethod] 
public static string GetData() 
{ 
    return "This string is from Code behind"; 
} 

輸出新的代碼看起來像這樣 enter image description here enter image description here