2010-07-13 5 views
2

Je veux charger juste une partie de mon document, j'ai dû utiliser la fonction LOAD en raison de cela, donc j'ai essayé cette fonction.mais j'ai un problème, je veux définir la méthode de cette fonction à POST.J'ai lu dans jquery manuel que cette fonction utilise la méthode GET par défaut, mais si vos données sont un objet, il utilisera la méthode POST.je ne sais pas comment faire cela? Je veux dire utiliser un objet dans la liste de données!comment utiliser la méthode POST dans la fonction LOAD de JQUERY?

voici mon code:

$("#form_next").live("click", function(event){ 

       var str = $("#form").serialize(); 

       $("#form").load("form.php?ajax=y&section=request&cid="+$("#country_id").val(), str, function(response, status, xhr) { 
        alert(response); 
       }); 
       return false;    
     }); 

Comment puis-je faire?

Répondre

2

Eh bien, vous avez déjà répondu à votre question.

$("#form").load("form.php", { 
    ajax:  y, 
    section: request, 
    cid:  $("#country_id").val(), 
    magicstr: str 
    }, function(response, status, xhr) { 
       alert(response); 
    }); 
+1

aucun pote vous vous êtes trompé !!! Je veux envoyer cette méthode STR par POST, mais elle n'est pas définie par défaut! –

+0

@armin: ajoutez simplement 'str' dans' objet de données'. J'ai mis à jour le post. Maintenant, vous pouvez simplement accéder à 'magicstr' dans l'objet de données côté serveur, en plus, cette requête est' POSTED'. – jAndy

+0

désolé andy, la façon dont nous accédons aux données dans les codes php est comme suit: par exemple: Est-ce vrai? –

4

Vous pouvez faire un simple tweak ici, utilisez .serializeArray() au lieu de .serialize(), comme ceci:

$("#form_next").live("click", function(event){ 
    var obj = $("#form").serializeArray(); 
    $("#form").load("form.php?ajax=y&section=request&cid="+$("#country_id").val(), obj, function(response, status, xhr) { 
    alert(response); 
    }); 
    return false;    
}); 

Cela déclenche la même logique que transmettre les données comme un objet (puisque vous êtes, en particulier un array), et provoquera un POST au lieu d'un GET comme vous le souhaitez.