Maison >interface Web >js tutoriel >Comment passer un tableau en arrière-plan en ajax
Cette fois, je vais vous montrer comment ajax transfère un tableau en arrière-plan. Quelles sont les précautions pour qu'ajax transfère un tableau en arrière-plan. Ce qui suit est un cas pratique, jetons un coup d'œil.
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 en arrière-plan, analyser notre json chaîne dans le inputStream, puis utilisez 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['book_id'] = countsCheckBox[i].value; booksid[i] = mysendbook_id; } //alert(booksid); var confirmdel= confirm('确认要删除吗?'); if(confirmdel){ //开始请求删除 $.ajax({ url:'selectdelbooks', data:JSON.stringify(booksid), type:'post', success:function(res){ alert("删除成功"); location.replace("/TheDemo/books/pageBooksShow"); } }); }
Dans le js ci-dessus, nous mettons chaque identifiant sélectionné dans un "book_id" de l'attribut mysendbook_id, puis 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.
Regardez comment nous le recevons en arrière-plan :
La première consiste à faire une liste dans une classe. Cette liste contient une classe avec un seul attribut appelé bookid, puis utilisez L'annotation @RequestBody
est ajoutée à ce paramètre. Mais c'est plus gênant ;
Une autre façon consiste à obtenir des 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 chaque book_id dans json est
<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 d'identifiant que nous avons sélectionnée.
Informations dans la base de données :
Sélections multiples sur la page :
La sélection obtenue en arrière-plan Identifiant du livre :
Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le. Site Web chinois PHP !
Lecture recommandée :
Comment implémenter l'effet de pagination AJAX
Comment soumettre un formulaire en utilisant Ajax et recevoir les données json
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!