大连仟亿科技
客服中心
  • 电话
  • 电话咨询:0411-39943997
  • 手机
  • 手机咨询:15840979770
    手机咨询:13889672791
网络营销 >更多
您现在的位置:仟亿科技 > 新闻中心 > 常见问题

用js获取到表单提交值的思路

作者:billionnet 发布于:2012/12/11 18:02:16 点击量:

本来小编是想用ajax 进行异步提交一些数据,但是数据有5,6个,甚至是很多,按正常是用getElementById等查询来取到相应的值,但是我觉得这样比较麻烦,因为如果要提交的东西稍微多一点的话,那就会显得很麻烦,很臃肿了,这样很是不好,想要知道是否有和submit一样的功能,直接把所有值提交过去来获取!如果有的话,那应该是怎样来实现的呢?

我在自己想办法的同时,也在网上看了一下相关方面的解决方法,发现是有和submit一样的功能的,因为我是用的jquery的,所以关于form操作时可以来实现的,而且也有三个方法来实现它,那就是下面的这三种:
form.ajaxSubmit(),form.submit()方法来form.ajaxForm(),最重要的是onsunmit事件,想要向多个页面上提交都是没有问题的,如下就是form操作来实现的功能:

 

 

//通过ajax提交form表单, 此方法是得到form表单里的参数
// frmID form  的id
//结果:a=xxx&b=xxx
function getFormQueryString(frmID) {

var frmID=document.getElementById(frmID);

var i,queryString = "", and = "";
var item; // for each form's object
var itemValue;// store each form object's value

for( i=0;i< frmID.length;i++ ) {
item = frmID[i];/  / get form's each object
if ( item.name!='') {

if ( item.type == 'select-one' ) {
itemValue = item.options[item.selectedIndex].value;
}
else if ( item.type=='checkbox' || item.type=='radio') {
if ( item.checked == false ){continue;}
itemValue = item.value;
}
else if ( item.type == 'button' || item.type == 'submit' || item.type == 'reset'){/   / ignore this type
continue;
}
else {
itemValue = item.value;

}
/ itemValue = encodeURIComponent(itemValue);

itemValue = encodeURI(encodeURIComponent(itemValue));   //汉字格式转换
queryString += and + item.name + '=' + itemValue;

and="&a p;";

}
}
return queryString;
}

这个思路对我是非常的重要的,不仅解决了我的问题,而且也开拓了我的思路,让我对解决这个问题有了更深层次的看法和理解,从而也知道了解决问题还是需要不同的方法和思路的!要非常全面地去思考一个问题,要想非常深刻的理解一门编程语言,在web开发这个道路上越走越远,不仅要多学习,而且要多加思考,将所学到的只是灵活应用!



分享到:


评论加载中...
内容:
评论者: 验证码:
  

Copyright@ 2011-2017 版权所有:大连仟亿科技有限公司 辽ICP备11013762-1号   google网站地图   百度网站地图   网站地图

公司地址:大连市沙河口区中山路692号辰熙星海国际2215 客服电话:0411-39943997 QQ:2088827823 42286563

法律声明:未经许可,任何模仿本站模板、转载本站内容等行为者,本站保留追究其法律责任的权利! 隐私权政策声明