2009-10-09 6 views

Répondre

1

Il n'y a pas de fonction directe comme celle mentionnée dans la documentation, vous l'aurez probablement compris manuellement dans la méthode beforeSubmit de jqGrid. J'utiliserais spontanément la méthode jQuerys serializeArray pour le formulaire et un JSON Serializer. Ensuite, vous devrez soumettre le formulaire sérialisé via Ajax. Assurez-vous simplement que vous renvoyez le succès: false, afin que jqGrid ne soumette pas le formulaire.

beforeSubmit : function(postdata, formid) { 
    var formarray = $('#' + formid).serializeArray(); 
    var httpbody = JSON.stringify(formarray); 
    // Send accordingly via AJAX 
    $.ajax(...); 
    // This looks kind of weird, but we don't want jqgrid to continue cause it was sent already 
    return { success : false, message : "Successffully saved" }; 
} 

ne semble pas la plus belle sollution bien mais l'événement beforeSubmit est probablement le seul endroit pour creuser dedans.

1

Je ne sais pas comment ce sera utile, mais je trouve que je peux retourner vrai ici aussi longtemps que je mets mon editurl à « # » ....

beforeSubmit: function (postdata, formid) {

    if (isValid) { 
         $.ajax({ 
          type: "POST", 
          async: false, 
          contentType: "application/json; charset=utf-8", 
          url: "/RateIQ/Main.aspx/Accessorial/AccessorialDetailSave", 
          data: JSON.stringify(postdata), 
          dataType: "json" 
         }); 
        } 
        return [isValid, ""]; 

} et je l'ai connu pas d'effets secondaires à ce jour ...

Questions connexes