Maison  >  Article  >  interface Web  >  Explication détaillée de la méthode d'utilisation d'ajax pour transmettre des tableaux et recevoir en arrière-plan

Explication détaillée de la méthode d'utilisation d'ajax pour transmettre des tableaux et recevoir en arrière-plan

亚连
亚连original
2018-05-22 11:52:263900parcourir

Cet article vous présente principalement les informations pertinentes sur l'utilisation d'ajax pour transférer des tableaux et recevoir en arrière-plan. L'introduction dans l'article est très détaillée et a une certaine valeur de référence et d'apprentissage pour tous les amis qui en ont besoin peuvent venir apprendre. ensemble.

Préface

Nous utilisons ajax pour soumettre de manière asynchrone la boîte de sélection multiple afin d'obtenir l'ID de l'objet qui doit être exploité. À ce stade, nous pouvons mettre chaque objet Make an avec l'identifiant, puis le mettre dans un tableau, puis utiliser JSON.stringify() pour formater le tableau en json ; analyser notre chaîne json dans inputStream en arrière-plan, puis utiliser simplement :

new JSONArray()Obtenez le tableau json et la boucle pour analyser les attributs que nous voulons :

var countsCheckBox = $("input[type='checkbox']:checked"); 
 var booksid = []; 
 for(var i=0;i<countsCheckBox.length;i++){ 
 //使用[]取得元素是是一个domElement元素,取值需要使用.value, 
 //如果使用countsCheckBox.eq(i) 则是一个Obkject元素,就可以使用val()取值 
 //alert(countsCheckBox[i].value); 
 mysendbook_id = {}; 
 mysendbook_id[&#39;book_id&#39;] = countsCheckBox[i].value; 
 booksid[i] = mysendbook_id; 
 } 
 //alert(booksid); 
  var confirmdel= confirm(&#39;确认要删除吗?&#39;); 
  if(confirmdel){ 
  //开始请求删除 
   $.ajax({ 
     url:&#39;selectdelbooks&#39;, 
     data:JSON.stringify(booksid), 
     type:&#39;post&#39;, 
     success:function(res){ 
      alert("删除成功"); 
     location.replace("/TheDemo/books/pageBooksShow"); 
     } 
     }); 
  }

Dans le js ci-dessus, nous mettez chaque identifiant sélectionné dans Dans l'attribut "book_id" d'un mysendbook_id, placez cet objet dans le tableau booksid ; lors de l'envoi d'une requête asynchrone, utilisez

JSON.stringify(bookid) pour formater le tableau booksid et obtenir un tableau json.

Regardons comment nous le recevons en arrière-plan :

La première consiste à faire une liste dans une classe, et cette liste ne contient que un attribut : La classe de bookid est ajoutée à ce paramètre formel en utilisant l'annotation @RequestBody. Mais c'est plus gênant ;

Une autre façon consiste à obtenir les données du flux d'entrée, à utiliser IOUtils.toString pour convertir le flux d'entrée en chaîne, puis à utiliser new JSONArray(mybooksid); pour obtenir le tableau json

Pour obtenir la valeur d'attribut de book_id dans chaque json

<span style="font-family:SimSun;font-size: 10.5pt;"> </span><span style="font-family:KaiTi_GB2312;font-size:14px;"> @RequestMapping("selectdelbooks") 
 public String selectdelbooks(HttpServletRequest request) throws Exception { 
  ServletInputStream inputStream = request.getInputStream(); 
  String mybooksid = IOUtils.toString(inputStream); 
  JSONArray jsonarr = new JSONArray(mybooksid); 
  List<String> book_id =new ArrayList<String>(); 
  for (int i=0;i<jsonarr.length();i++){ 
   book_id.add(((JSONObject)jsonarr.get(i)).getString("book_id")); 
  }...</span>

De cette façon, nous obtenons une liste avec la valeur id nous avons sélectionné.

Informations dans la base de données :


Sélection multiple sur la page :

Obtenez-le en arrière-plan L'identifiant du livre sélectionné :


De cette façon, l'ensemble des identifiants peut être obtenu et les opérations ultérieures seront pratiques.

Ce qui précède est ce que j'ai compilé pour vous. J'espère que cela vous sera utile à l'avenir.

Articles connexes :

Comment résoudre le problème de transmission de données par Ajax avec des caractères spéciaux

Configurer Chrome pour prendre en charge les (protocole de fichier) Requête AJAX (tutoriel graphique)

L'effet de pagination AJAX est simple à mettre en œuvre (tutoriel graphique)

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn