如何使用Javascript构建查询字符串

只是想知道是否有任何内置的Javascript可以采取一个窗体并返回查询参数,例如:“var1 = value& var2 = value2& arr [] = foo& arr [] = bar …”

我一直想知道这多年。

我试图搜索这个问题的答案一些前一段,但我最后写了我自己的函数,从窗体中提取的值。

它不是完美的,但它符合我的需要。

function form_params( form )
{
    var params = new Array()
    var length = form.elements.length
    for( var i = 0; i < length; i++ )
    {
        element = form.elements[i]

        if(element.tagName == 'TEXTAREA' )
        {
            params[element.name] = element.value
        }
        else if( element.tagName == 'INPUT' )
        {
            if( element.type == 'text' || element.type == 'hidden' || element.type == 'password')
            {
                params[element.name] = element.value
            }
            else if( element.type == 'radio' && element.checked )
            {
                if( !element.value )
                    params[element.name] = "on"
                else
                    params[element.name] = element.value

            }
            else if( element.type == 'checkbox' && element.checked )
            {
                if( !element.value )
                    params[element.name] = "on"
                else
                    params[element.name] = element.value
            }
        }
    }
    return params;
}

form_params返回参数的(键 – >值)映射。
输入是表单元素(DOM Element)

它不处理允许多重选择的字段。

http://stackoverflow.com/questions/316781/how-to-build-query-string-with-javascript

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:如何使用Javascript构建查询字符串