jquery - serializeArray()错误

时间:2010-12-08 20:53:33

标签: 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

谁能看到我做错了什么?

2 个答案:

答案 0 :(得分:6)

serializeArray仅适用于jQuery对象。由于args是一个vanilla对象,因此请使用$.param

loader($.param(args));

答案 1 :(得分:2)

args是一个普通的javascript对象,而不是JQuery对象。

来自the docs

  

此方法可以作用于jQuery对象   选择了个人表格   元素,例如<input><textarea>,   和<select>