Maison >interface Web >js tutoriel >Introduction aux exemples de méthodes Serialize(), SerializeArray() et param() dans JQuery_jquery
Voici le code jsp côté serveur :
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% request.setCharacterEncoding("UTF-8"); String username = request.getParameter("username"); String content = request.getParameter("content"); out.println("<div class='comment'><h6> "+username+" :</h6><p class='para'> "+content+" </p></div>"); %>
Comme d'autres méthodes dans JQuery, la méthode serialize() agit également sur un objet JQuery, qui peut sérialiser le contenu des éléments DOM en chaînes pour les requêtes ajax. En utilisant la méthode serialize(), vous pouvez soumettre tous les champs de cette page. Le code est le suivant :
$("#send").click(function(){ $.get("get1.jsp", $("#form1").serialize(), function(data, textStatus) $("#resText").html(data); }); });
Lorsque vous cliquez sur le bouton "Soumettre", tous les éléments du formulaire appartenant au formulaire 1 peuvent être soumis en arrière-plan. Même si d'autres champs sont ajoutés au formulaire, le script peut toujours être utilisé et aucun autre travail redondant n'est requis.
Lorsque vous utilisez le mode chaîne, vous devez faire attention à l'encodage des caractères (problème chinois). Si vous ne voulez pas que l'encodage pose problème, vous pouvez utiliser la méthode serialize(), qui encodera automatiquement.
Étant donné que la méthode serialize() fonctionne sur les objets JQuery, non seulement les formulaires peuvent l'utiliser, mais également les éléments sélectionnés par d'autres sélecteurs peuvent l'utiliser, comme le code JQuery suivant :
$(":checkbox,:radio").serialize();
Sérialisez les valeurs des cases à cocher et des boutons radio sous forme de chaîne. Seules les valeurs sélectionnées seront sérialisées.
Il existe également une méthode similaire à Serialize() dans JQuery - SerializeArray(). Cette méthode ne renvoie pas de chaîne, mais sérialise les éléments DOM et renvoie les données au format JSON. Le code JQuery est le suivant :
var fields = $(":checkbox,:radio").serializeArray(); console.log(fields); //用FireBug输出
La méthode $.param() est au cœur de la méthode serialize(), qui est utilisée pour sérialiser un tableau ou un objet en fonction de la clé/valeur.
Par exemple, sérialisez un objet ordinaire :
var obj = {a:1,b:2,c:3}; var k = $.param(obj); alert(k); //输出a=1&b=2&c=3