반응형
jQuery를 사용하여 Ajax를 통해 체크박스 배열의 값을 보내는 방법은?
양식 필드(12 x n 행)가 많은 양식을 가지고 있습니다.각 행의 첫 번째 필드(제품을 나타냄)는 다음과 유사한 확인란입니다.
<input type="checkbox" class="ids" name="ids[]" value="1">
각 확인란의 값은 고유합니다.
제가 하려는 것은 확인된 값을 Ajax를 통해 처리하기 위해 PHP 스크립트로 보내는 것입니다.제가 고민하고 있는 것은 서버에 아이디를 제대로 전달하는 것입니다.저는 다음과 같은 몇 가지를 사용해 보았습니다.
$('.ids:checked').serialize();
그리고.
var ids = [];
$('.ids:checked').each(function(i, e) {
ids.push($(this).val());
});
$.ajax({
url: "stub",
type: "post",
dataType: "json",
data: {
'ids[]': 'ids[]='+ids.join('&ids[]=')
},
success: function(data) {
// stub
}
});
하지만 이 두 가지 모두 서버에서 이를 확인할 수 있습니다.
ids[]=104&ids;[]=105
양식 전체를 직렬화해서 보낼 수는 있지만, 그렇게 되면 데이터가 많이 전송되어 사용되지 않을 수도 있습니다.
다음 값만 보내려면 어떻게 해야 합니까?delete[]
서버로?PHP가 배열로 인식하는 방식이 이상적입니까?
(아이디를 쉼표로 구분된 문자열로 보내면서 해결했지만 충분한 시간을 들여서 해결 방법을 알고 싶습니다.)
이 방법은 저에게 효과가 있었습니다.
<input type="checkbox" class="ids" name="ids[]" value="2">
<input type="checkbox" class="ids" name="ids[]" value="3">
<input type="checkbox" class="ids" name="ids[]" value="4">
<input type="checkbox" class="ids" name="ids[]" value="5">
<input type="checkbox" class="ids" name="ids[]" value="6">
<div id="response"></div>
<button id="submit">Submit</button>
<script>
$('#submit').click(function() {
$.ajax({
url: "stub.php",
type: "post",
data: $('.ids:checked').serialize(),
success: function(data) {
$('#response').html(data);
}
});
});
</script>
그럼 스터브에.php
var_dump($_POST);
ids를 쉼표로 구분된 문자열로 보내는 게 어때요?서버 측에서 분할하여 관련된 논리를 적용할 수 있습니다.
var ids = [];
$('.ids:checked').each(function(i, e) {
ids.push($(this).val());
});
$.ajax({
url: "stub",
type: "post",
dataType: "json",
data: {
'ids[]': ids.join()
},
success: function(data) {
// stub
}
});
잘 일하는 나를 위한 해결책
//get checkbox checked data as the array
var ids = new Array();
$('input[name="ids[]"]:checked').each(function(){
ids.push($(this).val());
});
var dataString = 'ids='+ ids;
$.ajax({
type: "POST",
url: "ajax_fees_pay_Directly.php",
data: dataString,
cache: false,
success: function(data){
}
});
언급URL : https://stackoverflow.com/questions/12433438/how-to-send-the-values-of-an-array-of-checkboxes-through-ajax-using-jquery
반응형
'programing' 카테고리의 다른 글
scanf()와 fgets()의 차이 (0) | 2023.11.01 |
---|---|
Vue.js에서 키 입력 처리 (0) | 2023.11.01 |
translatable="false"가 있는 strings.xml의 "여기서 번역되지만 기본 로케일에서는 찾을 수 없습니다" 오류 (0) | 2023.11.01 |
memset과 루프가 복수의 배열을 영점화하는 것 중 어느 것이 더 빠르거나 더 좋습니까? (0) | 2023.11.01 |
파워셸에서 병렬로 태스크 실행 (0) | 2023.11.01 |