Ajax를 사용하여 배열을 전달하고 백그라운드에서 수신하는 방법에 대한 자세한 설명
이 기사에서는 Ajax를 사용하여 백그라운드에서 배열을 전송하고 수신하는 방법에 대한 관련 정보를 주로 소개합니다. 기사의 소개는 매우 자세하며 필요한 모든 친구가 함께 와서 배울 수 있는 특정 참고 자료와 학습 가치가 있습니다.
머리말
Ajax를 사용하여 다중 선택 상자를 비동기적으로 제출하여 작업해야 하는 개체의 ID를 가져옵니다. 이때 각 ID에 대한 개체를 만든 다음 넣을 수 있습니다. 그런 다음 JSON.stringify()를 사용하여 배열을 json으로 형식화합니다. 백그라운드의 inputStream에서 json 문자열을 구문 분석한 다음 다음을 사용합니다. JSON.stringify()
对这个数组进行json的格式化;在后台中再inputStream中解析出我们的json字符串,之后只用:
new JSONArray()
得到json数组,循环解析我们想要的属性:
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"); } }); }
上面的js中我们把每一个选中的id放到一个mysendbook_id的“book_id”的属性中,再把这个对象放到booksid的数组中;到发送异步请求时使用
JSON.stringify(bookid)
格式化这个booksid数组,得到一个json的数组。
再看后台我们怎么接收:
一个是做一个类里面有一个list,这个list装的是只有一个属性为bookid的类,再使用注解@RequestBody
加到这个形参上。但是这样比较麻烦;
还有一种是从输入流里面获取数据,使用IOUtils.toString
把inputStream转为字符串,再使用new JSONArray(mybooksid);
new JSONArray() </code >json 배열을 가져오고 루프를 통해 원하는 속성을 구문 분석합니다. </p><p></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'><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></pre><div class="contentsignin">로그인 후 복사</div></div><p class="jb51code"></p>
<p>위 js에서 선택한 각 ID를 mysendbook_id의 "book_id" 속성에 넣은 다음 이 개체를 booksid를 배열로, 비동기 요청을 보낼 때 </p>
<p></p>
<code>JSON.stringify(bookid)
를 사용하여 booksid 배열의 형식을 지정하고 json 배열을 가져옵니다.
백그라운드에서 어떻게 수신되는지 살펴보겠습니다.
@을 사용합니다. RequestBody
이 형식 매개변수에 추가하세요. 하지만 이것이 더 문제가 됩니다. IOUtils.toString
을 사용하여 inputStream을 문자열로 변환한 다음 new JSONArray(mybooksid)를 사용하는 것입니다. ;
code>각 json
rrreee
을 가져옵니다. 이런 식으로 우리는 선택한 id 값이 포함된 목록을 얻습니다.
데이터베이스 정보:
페이지에서 다중 선택: 백그라운드에서 얻은 선택한 책의 ID:이런 방식으로 ID 세트는 얻어지고 후속 작업이 편리해집니다.
위 내용은 모두를 위해 제가 정리한 내용입니다. 앞으로 모든 사람에게 도움이 되기를 바랍니다. 관련 기사:
🎜🎜Ajax가 특수 문자를 사용하여 데이터를 전달하는 문제를 해결하는 방법🎜🎜🎜🎜🎜로컬(파일 프로토콜) AJAX 요청을 지원하도록 Chrome 구성(그래픽 튜토리얼) 🎜🎜🎜🎜🎜 AJAX 페이징의 간단한 구현 효과(그래픽 및 텍스트) 튜토리얼)🎜🎜🎜🎜🎜🎜🎜🎜🎜위 내용은 Ajax를 사용하여 배열을 전달하고 백그라운드에서 수신하는 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 배열에서 중복 요소를 제거하기 위해 foreach 루프를 사용하는 방법은 다음과 같습니다. 배열을 순회하고 요소가 이미 존재하고 현재 위치가 첫 번째 항목이 아닌 경우 삭제합니다. 예를 들어, 데이터베이스 쿼리 결과에 중복된 레코드가 있는 경우 이 방법을 사용하면 이를 제거하고 중복된 레코드가 없는 결과를 얻을 수 있습니다.

PHP 배열 키 값 뒤집기 방법의 성능 비교는 array_flip() 함수가 대규모 배열(100만 개 이상의 요소)에서 for 루프보다 더 나은 성능을 발휘하고 시간이 덜 걸리는 것을 보여줍니다. 키 값을 수동으로 뒤집는 for 루프 방식은 상대적으로 시간이 오래 걸립니다.

PHP에서 배열을 깊게 복사하는 방법에는 json_decode 및 json_encode를 사용한 JSON 인코딩 및 디코딩이 포함됩니다. array_map 및 clone을 사용하여 키와 값의 전체 복사본을 만듭니다. 직렬화 및 역직렬화를 위해 직렬화 및 역직렬화를 사용합니다.

PHP 및 Ajax를 사용하여 자동 완성 제안 엔진 구축: 서버측 스크립트: Ajax 요청을 처리하고 제안을 반환합니다(autocomplete.php). 클라이언트 스크립트: Ajax 요청을 보내고 제안을 표시합니다(autocomplete.js). 실제 사례: HTML 페이지에 스크립트를 포함하고 검색 입력 요소 식별자를 지정합니다.

다차원 배열 정렬은 단일 열 정렬과 중첩 정렬로 나눌 수 있습니다. 단일 열 정렬은 array_multisort() 함수를 사용하여 열별로 정렬할 수 있습니다. 중첩 정렬에는 배열을 순회하고 정렬하는 재귀 함수가 필요합니다. 실제 사례로는 제품명별 정렬, 판매량 및 가격별 복합 정렬 등이 있습니다.

PHP에서 배열 전체 복사를 수행하는 가장 좋은 방법은 json_decode(json_encode($arr))를 사용하여 배열을 JSON 문자열로 변환한 다음 다시 배열로 변환하는 것입니다. unserialize(serialize($arr))를 사용하여 배열을 문자열로 직렬화한 다음 새 배열로 역직렬화합니다. RecursiveIteratorIterator를 사용하여 다차원 배열을 재귀적으로 순회합니다.

PHP의 array_group_by 함수는 키 또는 클로저 함수를 기반으로 배열의 요소를 그룹화하여 키가 그룹 이름이고 값이 그룹에 속한 요소의 배열인 연관 배열을 반환할 수 있습니다.

Ajax(비동기 JavaScript 및 XML)를 사용하면 페이지를 다시 로드하지 않고도 동적 콘텐츠를 추가할 수 있습니다. PHP와 Ajax를 사용하면 제품 목록을 동적으로 로드할 수 있습니다. HTML은 컨테이너 요소가 있는 페이지를 생성하고 Ajax 요청은 로드한 후 요소에 데이터를 추가합니다. JavaScript는 Ajax를 사용하여 XMLHttpRequest를 통해 서버에 요청을 보내 서버에서 JSON 형식의 제품 데이터를 얻습니다. PHP는 MySQL을 사용하여 데이터베이스에서 제품 데이터를 쿼리하고 이를 JSON 형식으로 인코딩합니다. JavaScript는 JSON 데이터를 구문 분석하여 페이지 컨테이너에 표시합니다. 버튼을 클릭하면 제품 목록을 로드하라는 Ajax 요청이 트리거됩니다.
