2010-12-08 2 views
1

메신저 문자열JQuery와 - serializeArray() 오류

$(document).ready(function(){ 
var args = {}; 
$('.radio').click(function(){ 
    var ob = $(this).siblings('select'); 
    $('#uploader-wrapper').html(pre_load()); 
    $('.radio').siblings('select').attr('disabled', 'disabled'); 
    ob.removeAttr('disabled'); 
    args[ob.attr('name')] = $(':selected', ob).text(); 
    loader(args.serializeArray()); 
}) 
$('select[name=foo]').change(function(){ 
    var ob = $(this); 
    $('#uploader-wrapper').html(pre_load()); 
    args[ob.attr('name')] = $(':selected', ob).text(); 
    loader(args.serializeArray()); 
}); 
}); 

로 배열을 전달하려고하지만 난

args.serializeArray is not a function

사람이 잘못하고 무엇 메신저 볼 수있는 오류가?

답변

4

serializeArray은 jQuery 객체에서만 사용할 수 있습니다. args는 바닐라 객체이기 때문에, $.param를 사용

loader($.param(args)); 
+0

덕분에, 마치 마법처럼 작동합니다. –

+0

나를 위해 유용 할뿐만 아니라! + –

2

args은 JQuery 객체가 아닌 일반 자바 스크립트 객체입니다. the docs 가입일

,

이 방법은 각각의 형태를 예 <input>, <textarea>, 과 같은 <select> 요소를 선택한 JQuery와 오브젝트 에 작용할 수있다.