Heim  >  Artikel  >  Web-Frontend  >  So übergeben Sie ein Array in Ajax an den Hintergrund

So übergeben Sie ein Array in Ajax an den Hintergrund

php中世界最好的语言
php中世界最好的语言Original
2018-03-31 15:08:249970Durchsuche

Dieses Mal zeige ich Ihnen, wie Ajax ein Array in den Hintergrund überträgt. VorsichtsmaßnahmenDas Folgende ist ein praktischer Fall, schauen wir uns das an.

Vorwort

Wir verwenden Ajax, um das Mehrfachauswahlfeld asynchron zu senden und die ID des Objekts zu erhalten, das bedient werden muss. Zu diesem Zeitpunkt können wir jedes Objekt mit der ID erstellen, es dann in ein Array einfügen und dann im Hintergrund JSON.stringify() verwenden, um das Array als JSON zu formatieren und unseren JSON--String zu analysieren den inputStream, und verwenden Sie dann einfach:

new JSONArray()Rufen Sie das JSON-Array und die Schleife ab, um die gewünschten Attribute zu analysieren:

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"); 
     } 
     }); 
  }

In den obigen js fügen wir jede ausgewählte ID ein ein „book_id“ des mysendbook_id-Attributs und fügen Sie dieses Objekt dann in das Booksid-Array ein. Verwenden Sie

JSON.stringify(bookid), um das Booksid-Array zu formatieren, wenn Sie eine asynchrone Anfrage senden, und erhalten Sie ein JSON-Array.

Sehen Sie sich an, wie wir es im Hintergrund empfangen:

Eine besteht darin, eine Liste in einer Klasse zu erstellen. Diese Liste enthält eine Klasse mit nur einem Attribut namens bookid. und dann verwenden Die Anmerkung @RequestBody wird diesem Parameter hinzugefügt. Dies ist jedoch problematischer.

Eine andere Möglichkeit besteht darin, Daten aus dem Eingabestream abzurufen, den InputStream mit IOUtils.toString in einen String zu konvertieren und dann mit new JSONArray(mybooksid); das JSON-Array

< abzurufen 🎜> zu erhalten Der Attributwert jeder book_id in json ist

<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>
Auf diese Weise erhalten wir eine Liste mit dem von uns ausgewählten ID-Wert.

Informationen in der Datenbank:

Mehrfachauswahl auf der Seite:

Die erhaltene Auswahl im Hintergrund Buch-ID:

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln zum Thema PHP chinesische Website!

Empfohlene Lektüre:

So implementieren Sie den AJAX-Paging-Effekt

So senden Sie ein Formular mit Ajax und erhalten die JSON-Daten

Ajax zur Implementierung des unbegrenzten Ladens von Listen und sekundären Dropdown-Menüoptionen (mit Code)

Das obige ist der detaillierte Inhalt vonSo übergeben Sie ein Array in Ajax an den Hintergrund. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn