我试图将数组作为字符串传递

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

谁能看到我在做什么错?

有帮助吗?

解决方案

serializeArray 仅在jQuery对象上可用。自从 args 是香草对象,使用 $.param:

loader($.param(args));

其他提示

args 是普通的JavaScript对象,而不是jQuery对象。

文档,

该方法可以作用于选择各个表单元素的jQuery对象,例如 <input>, <textarea>, 和 <select>.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top