JS获取表单所有元素(键值对方式)

本文介绍了一种将同步表单提交转换为异步AJAX提交的方法,通过自定义标签和JavaScript函数实现了对表单数据的提取及异步提交。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1年前接到一个项目,需要把项目内所有同步提交的表单改造为异步AJAX提交,当然不可能大量更改原有代码,采用的思路是,form提交时,在onsubmit方法中采用AJAX完成提交动作。实现方式为编写自定义标签。在此实现过程中,AJAX传参需要取出form表单中所有的键值,于是,就有了下面的代码:

function getFormValue(fromId){//传入表单ID
    var frm=document.getElementById(fromId);//获取表单对象
    var name,value,row="";
    if(frm.elements.length){
        for(var i=0;i<frm.length;i++){//遍历每个表单元素
            var obj=frm[i];
            if(obj.type!="submit"&&obj.type!="reset"&&obj.type!="button"){
                if(obj.type=="radio"||obj.type=="checkbox"){
                    if(obj.checked){
                        name=obj.name;
                        value=obj.value;
                        row=row+name+"="+value+"&";
                    }
                }else{
                    name=obj.name;
                    value=obj.value;
                    row=row+name+"="+value+"&";
                }
            }
        }
    }
    return row;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值