首页 > 网站 > JavaScript无刷新页面提交表单中的数据

JavaScript无刷新页面提交表单中的数据

2009年4月14日 发表评论 阅读评论

/*
本文件是为无刷新页面提交数据而编写的几个公共方法,以便在提交form中的数据更方便;
第一步:创建对象Request;
第二步:获取form表单中的数据,并组织为字符串;
第三步:发送数据库到服务器;
*/
var ajax_submit_request =null;
/*
创建一个请求对象,根据浏览器的不同;
*/
function createFormRequest()
{
var req;

if(window.XMLHttpRequest)
{
req = new XMLHttpRequest();
if (req.overrideMimeType)
{
req.overrideMimeType(‘text/xml’);
}
}
else if (window.ActiveXObject)
{
try
{
req = new ActiveXObject(“Msxml2.XMLHTTP”);
}
catch (e)
{
try
{
req = new ActiveXObject(“Microsoft.XMLHTTP”);
}
catch (e)
{
}
}
}

/*
if (!req)
{
window.alert(“不能创建XMLHttpRequest对象实例.”);
return false;
}
*/
return req;
}

/*
创建一个请求对象,根据浏览器的不同;
*/

function getFormElementStr(formid) {
var result =new String();
var l = new Number();
eval(‘l = document.’ + formid + ‘.elements.length’);
for (var i = 0; i < l; i++) { var tempvalue = new String(); var tempid = new String(); var temptype = new String(); eval('tempid= document.' + formid + '.elements[i].name;'); eval('temptype= document.' + formid + '.elements[i].type;'); //alert(tempid); //alert(temptype); if (temptype=='text'){ eval('tempvalue= document.' + formid + '.elements[i].value;'); }else if (temptype=='textarea'){ eval('tempvalue= document.' + formid + '.elements[i].value;'); }else if (temptype=='hidden'){ eval('tempvalue= document.' + formid + '.elements[i].value;'); }else if(temptype=='select-one'){ eval('tempvalue=document.' + formid + '.elements[i].options[document.' + formid + '.elements[i].selectedIndex].value;'); }else if(temptype=='radio'){ eval('if(document.' + formid + '.elements[i].checked) tempvalue=document.' + formid + '.elements[i].value;'); }else if(temptype=='checkbox'){ var checkValue=new String(); checkValue=""; eval('if (document.' + formid + '.elements[i].checked==true) {checkValue=document.' + formid + '.elements[i].value}'); if(checkValue==''){ }else{ if (tempvalue==''){ tempvalue+=checkValue; }else{ tempvalue+=','+checkValue; } } }else if (temptype=='select-multiple'){ //计算Option的个数 //根据个数循环检测数值,并 var optionLen=new Number(); eval('optionLen=(document.' + formid + '.elements[i].options.length)'); for(var j=0;j return result;
}

/*
同步发送数据并返回服务器的返回数据;
*/
function sendFormData(url,data) {
if (ajax_submit_request ==null)
{
ajax_submit_request =createFormRequest();
}
ajax_submit_request.open(“POST”,url,false);
ajax_submit_request.setRequestHeader(“Content-Type”, “application/x-www-form-urlencoded;charset=UTF-8”);
ajax_submit_request.send(data);
return ajax_submit_request.responseText;
}

/*
异步发送数据并返回服务器,使用回调函数处理服务器的相应;
*/
function sendAsFormData(url,data,onreadystate) {
var ajax_submit_request1 =createFormRequest();
ajax_submit_request1.open(“POST”,url,true);
ajax_submit_request1.setRequestHeader(“Content-Type”, “application/x-www-form-urlencoded;charset=UTF-8”);
ajax_submit_request1.onreadystatechange =function(){
if (ajax_submit_request1.readyState == 4) {
var restext=ajax_submit_request1.responseText;
onreadystate(restext);
}
}
ajax_submit_request1.send(data);
}

分类: 网站 标签: 6,891 次阅读
原文链接:http://www.wenhq.com/article/view_292.html
欢迎转载,请注明出处:亲亲宝宝
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.