jquery - serializeArray () ошибка - PullRequest
       14

jquery - serializeArray () ошибка

2 голосов
/ 08 декабря 2010

я пытаюсь передать массив в виде строки

$(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

Кто-нибудь может увидеть, что я делаю не так?

Ответы [ 2 ]

6 голосов
/ 08 декабря 2010

serializeArray доступно только для объектов jQuery. Поскольку args является ванильным объектом, используйте $.param:

loader($.param(args));
2 голосов
/ 08 декабря 2010

args - это обычный объект javascript, а не объект JQuery.

С документы ,

Этот метод может работать с объектом jQueryкоторые выбрали отдельные элементы формы, такие как <input>, <textarea> и <select>.

...