Javascript
.serialize(); 시에 checkbox 값 ajax 전송되지 않는 이슈
주섬이
2018. 10. 2. 16:19
반응형
jquery form.serialize(); 시 checkbox 값 ajax 전송되지 않는 이슈
왜 때문인지? form.serialize() 해서 파라미터 전송 한 거 보면 checkbox 값이 없음!
따로 작업해서 넣어줘야하는것을 알게되었음..
HTML
<form id="formId">
<input id="checkboxId" name="checkboxName" type="checkbox" />
<input type="text" />
</form>
JS
$.ajax({
url: "url입력",
dataType: 'json',
data: form.serialize(),
success: function (data) {
if(data.retcode === 100) alert('성공');
}
});
피들러 확인해 보면 checkbox값이 전송되지 않는다는 것을 확인할 수 있다.
예외처리로 form 데이터를 만들어줘서 보내기!
JS
var $chk = $('#checkboxId');
var formData = $('#formId').serializeArray();
if(!$chk.is(':checked')){
formData.push({
name : $chk.attr('name'),
value : false
});
}
반응형