解决checkbox未选中不传递value

发布时间:2022-06-28 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了解决checkbox未选中不传递value脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

前端解决

网上很多解决方案,我这种应该还算简单的

只需要给checkbox元素添加data-default-value="0" 表示未选中的默认值

直接使用版

<input class="form-check-input" name="top" value="1" data-default-value="0"
                                       type="checkbox" role="switch"
                                       id="top">
                let data = $('.form2').serialize();

                var $notchecked_obj = $('.form2 input[type=checkbox]:not(:checked)');
                $notchecked_obj.each(function (index, element) {
                    let value = $(element).attr('data-default-value');
                    let key = $(element).attr('name');
                    data += '&' + $.param({[key]: value});
                });

                alert(data);

稍微封装版,放公共函数里面,以后可以直接用

        function formcheck(form_selector_str, serialize_data) {

            //    组装选择器
            let selector = form_selector_str + ' input[type=checkbox]:not(:checked)';

            //遍历没有选中的checkbox
            let $notchecked_obj = $(selector);
            // console.log($notchecked_obj);
            let temp = serialize_data;

            $notchecked_obj.each(function (index, element) {
                let value = $(element).attr('data-default-value');
                let key = $(element).attr('name');
                temp += '&' + $.param({[key]: value});
            });

            return temp;

        }

        var res = formcheck('.form2', $('.form2').serialize());

脚本宝典总结

以上是脚本宝典为你收集整理的解决checkbox未选中不传递value全部内容,希望文章能够帮你解决解决checkbox未选中不传递value所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: