只是想知道Javascript是否内置可以采用Form并返回查询参数的任何内容,例如:“ 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元素)
它不处理允许多选的字段。