JavaScript表单序列化

来源:互联网 发布:centos 7web服务器 编辑:程序博客网 时间:2024/06/05 01:02
function serialize(form){    if(!form || form.nodeName !== "FORM"){        return;    }    var i, len, arr = [];    for(i=0,len=form.elements.length; i<len; i++){        var ele = form.elements[i];        switch(ele.nodeName){            case "INPUT":                switch (ele.type){                    case "text":                    case "hidden":                    case "password":                        //arr.push(ele.name + "=" + ele.value);                        arr[ele.name] = ele.value;                        break;                    case "radio":                    case "checkbox":                        if(ele.checked){                            // arr.push(ele.name + "=" + ele.value)                            if(arr[ele.name] == undefined){                                arr[ele.name] = ele.value + ",";                            }                            else{                                arr[ele.name] += ele.value + ",";                            }                        }                        break;                }break;            case "SELECT":                switch(ele.type){                    case "select-one":                        // arr.push(ele.name + "=" + ele.value);                        arr[ele.name] = ele.value;                        break;                    case "select-multiple":                        for(var j=0; j<ele.options.length; j++){                            if(ele.options[j].selected){                                // arr.push(ele.name + "=" + ele.options[j].value);                                if(arr[ele.name] == undefined)                                    arr[ele.name] = ele.value + ",";                                else                                    arr[ele.name] += ele.value + ",";                            }                        }                        break;                }break;            case "TEXTAREA":                // arr.push(ele.name + "=" + ele.value);                arr[ele.name] = ele.value;                break;        }    }    for(key in arr){        str += key + "=" +arr[key] + "&";    }    return str.substr(0, str.length-1);}
0 0
原创粉丝点击