2009-12-27 3 views
0

Le projet se poursuit. .Envoyer le formulaire serialize à asp.net webmethod

J'ai un formulaire que je suis sérialisant avec le plugin jquery form. Fonctionne très bien. J'utilise ensuite la fonction jquery ajax pour publier sur une méthode web asp.net afin que chaque élément de formulaire puisse être inséré dans une base de données.

Mon problème est le suivant: comment faire une boucle sur chacun des paramètres request.form envoyés via ajax dans la méthode web asp.net. Si j'utilise un Request.Form standard (""), je reçois une erreur. Voici mon code.

var queryString = $('input').fieldSerialize(); 

$.ajax({ 
    type: "POST", 
    url: "Detail.aspx/doPostTest", 
    data: "{ 'txtQuery': '" + queryString + "'}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (data) { 
     var products = eval(data.d);        
     console.log(products); 
    } 
}); 

code derrière

<System.Web.Services.WebMethod()> _ 
Public Shared Function doPostTest(ByVal txtQuery As String) As String 

    'Grab Request Form variables 
    Request.Form("txtMember") 
End Function 

L'erreur que je reçois sur le côté serveur est la suivante:

Ne peut pas se référer à un membre d'instance de une classe à partir d'un partage method or membre partagé. . etc.

Merci d'avance.

Répondre

2

Vous aurez besoin d'appeler HttpContext.Current.Request pour accéder à votre HttpRequest actuel à partir de méthodes statiques. La classe Page dont hérite votre page contient une propriété d'instance Request; Par conséquent, il n'est pas possible d'accéder à cet accessoire à partir de vos méthodes statiques.

+0

Merci. Je vais essayer. –