denomina la function di class class .cs (c #) da javascript

Ho dubbi riguardo la function di chiamata di class .cs file (C #) da javascript My Code: Ho file di class (.cs) come call_cs_function_from_js

------------------------------------------------------------------ using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace call_cs_function_from_js { public class cal_lcs_function_from_js { public void getdata() { } } } 

Questo è il codice javascript File:

 <script type="text/javascript"> function call(){ cal_lcs_function_from_js.getdata(); //This way is not working alert('called'); } </script> 

Qui voglio call getdata di cal_lcs_function_from_js da call () (mezzi .js). chiamata () invocata quando si fa clic sul button.

Per favore mostrami quali sono le altre vie.

Non puoi call la tua function C # direttamente dal tuo codice javascript. Come JavaScript viene eseguito sul lato client e la tua function C # risiede sul server. Per questo è necessario creare un servizio Web e call tale servizio formattare il tuo javascript utilizzando Ajax .

AGGIORNARE:

  1. Innanzitutto aggiungere lo spazio dei nomi using System.Web.Services; alla tua pagina web.
  2. Aggiungere il metodo seguente alla tua pagina

     [WebMethod] public string GetData() { return (""); } 
  3. Chiamare il metodo utilizzando Ajax .

    $ .ajax ({tipo: "GET", url: "/ GetData", successo: function (dati) {});

L'unico modo per call una function C # utilizzando Javascript è se si esegue la function C # all'interno di una pagina ASP.NET. Quindi si dovrebbe usare una chiamata ajax dal javascript per call la pagina ASP.Net e recuperare i risultati della tua function.

http://api.jquery.com/jQuery.ajax/

 function call(){ $.ajax({ url: "/cal_lcs_function_from_js" }).done(function() { alert('called'); }); } 

where "/ cal_lcs_function_from_js" è una pagina in esecuzione in ASP.net sullo stesso server web in cui viene eseguito il file javascript.