js獲取form表單所有數(shù)據(jù)的簡(jiǎn)單方法
在HTML中用js獲取通過(guò)GET、POST方法(就是在網(wǎng)址后加?a=b&c=d之類)傳過(guò)來(lái)的表單值。
針對(duì)大家常用的獲取表單方式,很多時(shí)候都是在重復(fù)的寫一些代碼,今天給大家貼出來(lái)的代碼可以作為公用方法直接調(diào)用??梢蕴岣叽蠹业拈_(kāi)發(fā)效率。
Js代碼
<script type="text/javascript">
//獲取指定form中的所有的<input>對(duì)象
function getElements(formId) {
var form = document.getElementById(formId);
var elements = new Array();
var tagElements = form.getElementsByTagName('input');
for (var j = 0; j < tagElements.length; j++){
elements.push(tagElements[j]);
}
return elements;
}
//獲取單個(gè)input中的【name,value】數(shù)組
function inputSelector(element) {
if (element.checked)
return [element.name, element.value];
}
function input(element) {
switch (element.type.toLowerCase()) {
case 'submit':
case 'hidden':
case 'password':
case 'text':
return [element.name, element.value];
case 'checkbox':
case 'radio':
return inputSelector(element);
}
return false;
}
//組合URL
function serializeElement(element) {
var method = element.tagName.toLowerCase();
var parameter = input(element);
if (parameter) {
var key = encodeURIComponent(parameter[0]);
if (key.length == 0) return;
if (parameter[1].constructor != Array)
parameter[1] = [parameter[1]];
var values = parameter[1];
var results = [];
for (var i=0; i<values.length; i++) {
results.push(key + '=' + encodeURIComponent(values[i]));
}
return results.join('&');
}
}
//調(diào)用方法
function serializeForm(formId) {
var elements = getElements(formId);
var queryComponents = new Array();
for (var i = 0; i < elements.length; i++) {
var queryComponent = serializeElement(elements[i]);
if (queryComponent)
queryComponents.push(queryComponent);
}
return queryComponents.join('&');
}
</script>
Js代碼
function getFormInfo(){
var params = serializeForm('login');
alert(params);
}
Html代碼
<body> <form id="login" name="login" method="post" action="result.jsp"> <input name="user" type="text"/> <input name="sex" type="radio" value="man"/> <input name="sex" type="radio" value="woman"/> interest:<input type="checkbox" name="interest" value="piu">PIU <input type="checkbox" name="interest" value="dss">DSS <input type="checkbox" name="interest" value="ddr">DDR<br> <input type="hidden" name="from" value="welcome"><br> <input type="button" name="submit" value="submit" onclick="getFormInfo();"> </form> </body>
html:

url:

以上這篇js獲取form表單所有數(shù)據(jù)的簡(jiǎn)單方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- JavaScript實(shí)現(xiàn)動(dòng)態(tài)添加Form表單元素的方法示例
- jQuery實(shí)現(xiàn)form表單元素序列化為json對(duì)象的方法
- js函數(shù)名與form表單元素同名沖突的問(wèn)題
- javascript獲取form里的表單元素的示例代碼
- javascript實(shí)現(xiàn)的動(dòng)態(tài)添加表單元素input,button等(appendChild)
- js創(chuàng)建表單元素并使用submit進(jìn)行提交
- Javascript簡(jiǎn)單改變表單元素背景的方法
- JavaScript使用表單元素驗(yàn)證表單的示例代碼
- js實(shí)現(xiàn)a標(biāo)簽超鏈接提交form表單的方法
- Javascript和Java獲取各種form表單信息的簡(jiǎn)單實(shí)例
- JavaScript動(dòng)態(tài)創(chuàng)建form表單并提交的實(shí)現(xiàn)方法
- JS document form表單元素操作完整示例
相關(guān)文章
JavaScript實(shí)現(xiàn)快速排序的方法分析
這篇文章主要介紹了JavaScript實(shí)現(xiàn)快速排序的方法,結(jié)合實(shí)例形式分析了快速排序的原理、實(shí)現(xiàn)方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2018-01-01
javascript高仿熱血傳奇游戲?qū)崿F(xiàn)代碼
這篇文章主要介紹了javascript高仿熱血傳奇游戲的實(shí)現(xiàn)代碼,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2018-02-02
js將iframe中控件的值傳到主頁(yè)面控件中的實(shí)現(xiàn)方法
主要是通過(guò)在主頁(yè)面定義一個(gè)傳輸數(shù)據(jù)的函數(shù)GetData(data),然后在iframe嵌入頁(yè)面中通過(guò)parent.GetData(data),這樣即可在GetData實(shí)現(xiàn)將data進(jìn)行處理即可。2013-03-03
JS如何使用正則表達(dá)式(match)截取括號(hào)中的文字和數(shù)字
正則表達(dá)式是一種用來(lái)匹配文本模式的工具,這篇文章主要給大家介紹了關(guān)于JS如何使用正則表達(dá)式(match)截取括號(hào)中文字和數(shù)字的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10

