Cette fois, je vous propose Ajax+Struts2 pour recevoir un formulaire tableau (avec code). Quelles sont les précautions pour qu'Ajax+Struts2 reçoive un formulaire tableau. Ce qui suit est un cas pratique, prenons. un regard.
Je vais vous expliquer ci-dessous à travers deux méthodes : la forme ordinaire et l'ajax. Nous avons d’abord l’entité suivante, une action et un jsp.
Student.java
public class Student { private String name; private String num; } StudentAction.java public class StudentAction extends ActionSupport { private List<Student> lstStu; }
xy.jsp
<script type="text/javascript"> var stus = []; stus.push({num:"1",name:"xy1"}); stus.push({num:"2",name:"xy2"}); stus.push({num:"3",name:"xy3"}); </script>
Commençons, les codes suivants sont Écrit dans la zone de script de xy.jsp.
Formulaire normal - Parcourir le tableau, construire le champ caché du formulaire
var htmlContent = ""; for(var i=0;i<stus.length;i++){ htmlContent += "<input type='hidden' name='lstStu[" + i + "].name' value='" + stus[i].name + " ' />"; htmlContent += "<input type='hidden' name='lstStu[" + i + "].num' value='" + stus[i].num + " ' />"; }
Cas particulier
<input type='hidden' name='lstStu.name' value='xy1' /> <input type='hidden' name='lstStu.name' value='xy2' /> <input type='hidden' name='lstStu.name' value='xy3' />
Lors de la transmission d'un seul attribut, les struts peuvent le reconnaître et représenter trois étudiants différents. Mais transmettre deux attributs ne fonctionnera pas, car struts ne connaît pas la combinaison. Non recommandé.
Formulaire ajax - parcourir le tableau et construire un objet json
var param = {}; for(var i=0;i<stus.length;i++){ param["lstStu[" + i + "].name"] = stus[i].name; param["lstStu[" + i + "].num"] = stus[i].num; } $.ajax({ data:param });
En fait, nous avons construit un tel objet json
data:{ lstStu[0].num:"1",lstStu[0].name:"xy1", lstStu[1].num:"2",lstStu[1].name:"xy2", lstStu[2].num:"3",lstStu[0].name:"xy3" }
Je crois que vous le maîtrisez après avoir lu le cas dans cet article. Pour des méthodes plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !
Lecture recommandée :
Explication détaillée des principes et des cas d'implémentation de JSONP
Comment utiliser ajax.load() méthode dans jQuery
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!