web-dev-qa-db-fra.com

Comment appeler une fonction codebehind à partir de javascript dans asp.net?

Je veux appeler une fonction de mon code derrière en utilisant javascript. J'ai utilisé le code ci-dessous:

function fnCheckSelection() {
some script;
window["My"]["Namespace"]["GetPart"](null);
}

... où "GetPart" est le nom de la fonction. Cependant, cela ne fonctionne pas. S'il vous plaît aidez-moi sur ce point.

8
charu

en JavaScript:

    document.getElementById("btnSample").click();

Contrôle côté serveur:

    <asp:Button runat="server" ID="btnSample" Text="" style="display:none;" OnClick="btnSample_Click" />

C #

    protected void btnSample_Click(object sender, EventArgs e)
    {

    }

C'est facile quand même ...

16
Nachiket

Vous pouvez le faire par un appel ajax

voici un exemple JQuery:

$.ajax({
            type: "POST",
     url:"~/code_behind.aspx/Method",
            data: dataPost,
            contentType: "application/json; charset=utf-8",
            dataType: "json",
    ....
    });

voici api documentation et dans le code derrière

[WebMethod]
public static yourType Method (Params){}

vous pouvez également ajouter un bouton caché dans updatePanel et appeler l'événement click à l'aide de js. ('#<%=ID.ClientID%>').click();Il appellera OnClientClick s'il existe, alors votre fonction codeBehind.

6
Med.Amine.Touil

essaye ça 

Votre fonction de code derrière

[WebMethod]
public  static void GetPart() {

               //your code goes here
}  

. Javascript

$(document).ready(function () {

 $("#btnname").click(function () {

 $.ajax({
                    type: "POST",
                    url: "/youraspxpagename.aspx/GetPart",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (msg)
                    {

                    }
                });
});

});
2
Arunprasanth K V