如何使用jquery将更多数据添加到现有数据中



如何使用jquery或普通的javascript将更多数据添加到现有数据中?

fd = {
    name : file_data.name,
    size : file_data.size
};
// And others.
$("form").find('input[type=hidden]').each(function(){
    $(fd).data(this.name, this.value);
});

我得到了这个奇怪的结果,

Array
(
    [name] => Dangerous Man.mp3
    [size] => 11912748
    [jQuery1910560199169432603] => Array
        (
            [toJSON] => undefined
            [data] => Array
                (
                    [article_id] => 
                    [category_id] => 15
                    [user_id] => 1
                    [max_upload_filesize] => 3
                    [method] => upload
                    [required[category_id] => Category ID
                )
        )
)

但我追求这个结果,

Array
(
    [name] => Dangerous Man.mp3
    [size] => 11912748
    [article_id] => 1
    [category_id] => 15
    [user_id] => 1
    [max_upload_filesize] => 3
    [method] => upload
    [required[category_id] => Category ID
)

有什么想法吗?

只需将属性添加到对象

$("form").find('input[type=hidden]').each(function(){
    fd[this.name] = this.value;
});

您只能将 Element、NodeList、选择器或函数传递到 $ 函数中,而不能传递到 Object 中。你应该这样做:

fb[ this.name ] = this.value;

而不是

$(fd).data(this.name, this.value);

最新更新