如何序列化复选框,单选和多个选择元素,如果他们是空白使用Jquery SerializeArray()

How Can I Serialize the checkbox, radio and multiple select elements if they are blank using Jquery SerializeArray()?

本文关键字:空白 他们是 Jquery SerializeArray 如果 选择 复选框 序列化 单选 元素      更新时间:2023-09-26

我已经阅读了jquery文档,它似乎像输入元素,如复选框,单选和多重选择将不会序列化,如果他们是空白的。我也读过这个帖子。jQuery序列化不注册复选框,这给了我关于这个问题的很好的信息。

但是这里我想要的是,"这个问题有什么优雅的解决方案吗?",如果这些元素为空,我只想要一个空白值。

任何建议都很好。

在同一个例子中也提到了这一点。试试这个:

/* Get input values from form */
values = jQuery("#myform").serializeArray();
/* Because serializeArray() ignores unset checkboxes and radio buttons: */
values = values.concat(
        jQuery('#myform input[type=checkbox]:not(:checked)').map(
                function() {
                    return {"name": this.name, "value": 'off'}
                }).get()
);