`
追梦java
  • 浏览: 36982 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

页面之间如何传递大量参数

 
阅读更多

这个标题不知道怎么取才好,其实要实现的功能就是在客户端要将大量的数据传递到服务端,我们知道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.Streaminstream=Page.Request.InputStream;
BinaryReaderbr
=newBinaryReader(instream,System.Text.Encoding.UTF8);
byte[]byt=br.ReadBytes((int)instream.Length);
stringsXml=System.Text.Encoding.UTF8.GetString(byt);

System.Xml.XmlDocumentxmlDoc
=newSystem.Xml.XmlDocument();
xmlDoc.LoadXml(sXml);

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

分享到:
评论

相关推荐

    asp.net不同页面间数据传递的多种方法

    1. Get(即使用QueryString显式传递)方式:在url后面跟参数。特点:简单、方便。缺点:字符串长度最长为255个字符;数据泄漏在url中。适用数据:简单、少量、关键的数据。适用范围:传递给自己、传递给另一个目标页面...

    JavaWeb设计在线考试系统(报告)

    各模块之间采用函数调用,参数传递,返回值的方式进行信息传递。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输 2.5 运行设计 运行程序,执行登录模块,如果是新用户,就进入...

    AutoPlay_Menu_Builder6.0.1328注册版

    动运行概述操作系统具有一项称为自动运行的特性。当插入一张带有自动运行菜单程序的光盘到光盘驱动器中,系统会自动加载并启动自动运行菜单。... 动作参数指定动作类型之后,还必须指定执行动作的相关...

    AutoPlay_Menu_Builder5.5.0.1328注册版

    动运行概述操作系统具有一项称为自动运行的特性。当插入一张带有自动运行菜单程序的光盘到光盘驱动器中,系统会自动加载并启动自动运行菜单。... 动作参数指定动作类型之后,还必须指定执行动作的相关...

    数据库MIS系统 11.0

    11、能处理数据库复杂的SQL语句,并且能自定义参数进行参数传递。12、能从事其他的文件设计工作,比如名片、一般性文档设计、幻灯制作等。13、提供了单用户或者多用户的密码设计工作。14、本系统自动识别和控制扫描...

    【。net 专业】 面试题

    C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。 【面试题库网整理 .net 面试题(附答案)(三)】 22.您要创建一个显示公司员工列表的应用程序。您使用一个...

    Altium Designer Beta 19.0.10完整版安装包+安装教程+和谐文件

    解决了Project Releaser的问题,如果任何参数之间的唯一区别是存在特殊字符(_,&,\等),则发布会产生“相同的密钥”错误。 27026 修复了组件的符号和占用空间之间的区分大小写的问题。将组件释放到服务器时,...

    入门学习Linux常用必会60个命令实例详解doc/txt

    Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux...

    购物商城系统源代码--036

    更有远程数据读取功能,两台主机之间传递购物系统数据不经过本地不消耗任何本地资源即可完成,创建备份购物系统或更新镜像购物系统易如反掌. 后台管理程序中可方便的查看数据库的使用情况,同时提供数据库优化功能以...

    图书管理系统需求分析文档

    并进行数据处理 194.2 相关数据参数在各个板块之间传递 204.3 向用户显示信 23用户手册 241引言 241.1编写目的 241.2背景 241.3参考资料 242用途 253运行环境 253.1硬设备 253.2支持软件 254使用过程 254.1创建主...

    亮剑.NET深入体验与实战精要2

    3.4.1 页面之间传值的7种方法 142 3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面...

    亮剑.NET深入体验与实战精要3

    3.4.1 页面之间传值的7种方法 142 3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面...

    C#编程经验技巧宝典

    111 &lt;br&gt;0184 如何在ASP.NET中获取文件的扩展名 111 &lt;br&gt;0185 如何在ASP.NET中用URL在页面之间传值 112 &lt;br&gt;0186 如何使用IsPostBack实现ASP.NET页面加载 112 &lt;br&gt;0187 如何利用输出缓存技术缓存...

    JavaScript笔记

    等号右边其实就是1个匿名方法对象 |--*必须在传递之前声明方法对象* C:var compare=new Function('a','b','return a-b') ---| --其实js底层就是new Function;构造函数中的参数都是字符串 结论:所有的方法都是...

    freemarker总结

    options:该参数可以省略,指定包含时的选项,包含encoding和parse两个选项,其中encoding指定包含页面时所用的解码集,而parse指定被包含文件是否作为FTL文件来解析,如果省略了parse选项值,则该选项默认是true. ...

    幻影Webzine.1.7z

    赖于Http协议实现,Http是无状态的协议,所以为了在各个会话之间传递信息,就不可避免地 用到Cookie或者Session等技术来标记访问者的状态,而无论是Cookie还是Session,一般都 是利用Cookie来实现的(Session其实是...

    外文翻译 stus MVC

    1:外文原文 Struts——an open-source MVC implementation This article introduces Struts, a Model-View-Controller implementation that uses servlets and JavaServer Pages (JSP) technology....

    Spring面试题

    通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity、Tiles、iText 和 POI。 Spring 框架的功能可以用在任何 J2EE 服务器中,大多数功能也适用于不受管理的环境。Spring ...

    ExtAspNet_v2.3.2_dll

    -一个典型应用,在Window控件中打开新页面,如果传递的参数不正确,则首先提示参数不对然后关闭此弹出窗口。 -ExtAspNet.Alert.Show("参数错误!", String.Empty, ExtAspNet.ActiveWindow.GetCloseReference());...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -一个典型应用,在Window控件中打开新页面,如果传递的参数不正确,则首先提示参数不对然后关闭此弹出窗口。 -ExtAspNet.Alert.Show("参数错误!", String.Empty, ExtAspNet.ActiveWindow.GetCloseReference());...

Global site tag (gtag.js) - Google Analytics