0 votes

éviter le viewstate lorsque le post utilise jquery

Comment puis-je éviter ou plutôt ne pas envoyer le viewstate lorsque je poste depuis jquery ?

J'essaie de mettre dans le .aspx EnableViewState="false" mais cela n'a aucun effet...

Voici comment j'affiche ma page :

var json = "{'firstname':'" + escape(firstname.val()) + "','surname':'" + surname.val() + "','day_fi':'" + day_fi.val() + "'}";
var ajaxPage = "wizard_data_process.aspx?returnId=0"; 
var options =
    {
        type: "POST",
        url: ajaxPage,
        data: json,
        contentType: "application/json;charset=utf-8",
        dataType: "json",
        async: false,
        success: function(response) {
            //alert("success: " + response);
        },
        error: function(msg) {
            //alert("failed: " + msg); 
        }
    };

Une aide ?

Données envoyées au serveur :

_ EVENTTARGET=& _EVENTARGUMENT=&_ VIEWSTATE=%2FwEPDwUKMTMyNDEzMjAzM2QYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFDGNieE5vTWlkTmFtZXiY9c%2FusiuXmmWoJcK9o1udk5EX&. _EVENTVALIDATION=%2FwEWKAL9rv3PAgK5h62pDwKnq8goAo%2BUwaAKAp2VxakCAtyNr8EIAr%2Fiza4EAtKQxe0HAtKQ4e0HAoDiza4EAoTfzqgFAumw5MYJAt%2Bw5MYJAofGq70JArr1ub4HAuKw5MYJAqfRtpcOArS3qtYNAtfYgLgBAu7YgLgBAu%2Bnq4AOAr2l1I8JAoz6iM8PAv2zgs4HAuXbmvMCAum1prUBApuktpcOApXyjvkGAuWixvECApSOke8IAt%2F1gtUKAsK1%2BeEBArKpwL0FAvfnuc0BAtb3964NAq%2Bm6rYIAvK94JEPAqCg9ZcMApmw76wEAsSXxu0O%2B%2F2DDTg9otIrNrwvY0ugwxYyULA%3D&txtFirstName=asdf&txtMiddleName=&txtLastName=&ddlSalutation=&ddlSuffix=&txtEmailAddress=&ddlGender=&txtDateOfBirth=&MaskedEditExtender1_ClientState=&ddlCountryOfBirth=&CascadingDropDown1_ClientState=%3A%3A%3A&ddlStateOfBirth=&CascadingDropDown2_ClientState=%3A%3A%3A&txtCityofBirth=&day_fi=DD&month_fi=MM&year_fi=YYYY&lastFour_fi=XXXX&countryPrefix_fi=%2B358&areaCode_fi=&phoneNumber_fi=&email_fi=test%40hotmail. com&username=&password=&retypePassword=&hiddenInputToUpdateATBuffer_CommonToolkitScripts=0

1voto

Josh Points 23923

Avez-vous envisagé d'utiliser la méthode Page à la place ?

[WebMethod]
public static void AddPerson(String name, Int32 age)
{  
    //implementation here  
}  

Il se comporte comme un service web et n'envoie que la petite quantité de JSON nécessaire pour effectuer l'appel de méthode.

Vous pouvez également le faire en utilisant JQuery.

EDITAR:

Effectuer cet appel depuis le client peut être aussi simple que cela :

function getPersonJson() {
    var name = $("#<%= Name.ClientID %>");
    var age = $("#<%= Age.ClientID %>");
    return json = "{name:'" + name.val() + "',age:'" + age.val() + "'}";
}

function callAddPerson() {
    var json = getPersonJson();

    $.ajax({
        type: "POST",
        url: "AddPersonPageMethod.aspx/AddPerson",
        data: json,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function(msg) {
            alert("Success!");
        }
    });
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X