文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>xmlhttp.send()方法参数传递数据

xmlhttp.send()方法参数传递数据

时间:2008-06-29  来源:evaspring

这个标题不知道怎么取才好,其实要实现的功能就是在客户端要将大量的数据传递到服务端,我们知道url的长度是有限制的,如果使用url的参数来传递数据,只能传递很少的关键信息,但有时候我们要传递大量的信息,比如一张单据中的所有商品的商品编号等等.
Ajax技术中的xmlhttp.send()方法提供我们传送大量数据的功能,要使用该功能,首先要将要传到服务端的数据封装在一个xml对象中,在将这个xml对象的xml属性做为send()方法的参数就可以.

                    客户端代码:

                    var guidArray=guidlist.split(",");
                    var xmlDom=new ActiveXObject("MSXML2.DOMDocument");
                    xmlDom.loadXML("");
                    var domRoot= xmlDom.createElement("NewDataSet");
                    xmlDom.appendChild(domRoot);
                    for(var i=0;i<guidArray.length;i++)
                    {
                           var node= xmlDom.createElement("guid");
                          node.text=guidArray[i];
                          domRoot.appendChild(node);                      
                    }
                   
                    var xmlhttp=new ActiveXObject("MSXML2.XMLHTTP");                   
                    xmlhttp.onreadystatechange=function(){
                            if (xmlhttp.readyState==4)
                            {
                              if (xmlhttp.status==200)
                              {
                                 alert("处理完成");
                              }
                              else
                              {
                                 alert(xmlhttp.responseText);
                              }
                            }
                                 
                    }
                    xmlhttp.Open("POST","fmSmsPostProcess.aspx?sStatus="+escape(sStatus)+"&sProcessResult="+escape(document.getElementById("btProcessResult").value)+
                                         "&sReStore="+escape(document.getElementById("btReStore").value),true);
                    xmlhttp.setRequestHeader("Content-Type","text/xml");                                        
                    xmlhttp.send(xmlDom.xml);

               服务端需要从请求流中,解析出客户端传入的xml的内容,服务端代码:
               System.IO.Stream instream = Page.Request.InputStream;
                BinaryReader br = new BinaryReader(instream,System.Text.Encoding.UTF8);
                byte[] byt = br.ReadBytes((int)instream.Length);
                string sXml = System.Text.Encoding.UTF8.GetString(byt);

                System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument();
                xmlDoc.LoadXml(sXml);

                XmlElement xe= xmlDoc.DocumentElement;
                for(int i=0;i< xe.ChildNodes.Count;i++)
                {
                    sGuid = sGuid + ",'" + xe.ChildNodes[i].InnerText+"'";
                }

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载