jquery 获取表单元素值

function getParameter(el){
        var obj={};
        $(el).each(function(index,item){
            // 判断元素的类型
            if(item.type=="text" || item.type=="password" || item.type=="select-one" || item.type=="tel" ||
                item.type=="search" || item.type=="range" || item.type=="number" || item.type=="month" ||
                item.type=="email" || item.type=="datetime-local" || item.type=="datetime" || item.type=="date" ||
                item.type=="color"){
                //获取到name的值,name的值就是向后台传递的数据
                obj[$(this).attr("name")]=$(this).val();
            }else if(item.type=="checkbox"){
                var stamp=false;
                if($(this).attr("name") && !stamp){
                    stamp=false;
                    // 获取到复选框选中的元素
                    if($(item).attr('name').indexOf('[]')) {
                        if($(item).is(':checked')) {
                            var newName = $(item).attr('name').replace('[]', '');
                            if(typeof obj[newName] == 'undefined') {
                                obj[newName] = $(item).val();
                            } else {
                                obj[newName] = obj[newName] + ',' + $(item).val();
                            }
                        }
                    } else {
                        var checkboxEl=$("input[name="+$(item).attr('name')+"]:checked");
                        if(checkboxEl){
                            var checkboxArr=[];
                            // 取出复选框选中的值
                            checkboxEl.each(function(idx,itm){
                                checkboxArr.push($(itm).val());
                            });
                            obj[$(this).attr("name")]=checkboxArr.join(",");
                        }
                    }
                }
            }else if(item.type=="radio"){
                // 获取到单选框选中的值
                var radio_val=$("input[name="+$(item).attr('name')+"]:checked").val();
                if(radio_val){
                    obj[$(item).attr("name")]=radio_val;
                }
            }
        });
        return obj;
    }
var params = getParameter('.query');
var paramStr = '';
for(n in params) {
if(params[n] !== '') {
paramStr += '&' + n + '=' + params[n];
}
}


原文地址:https://www.cnblogs.com/bandbandme/p/13553873.html