js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)_javascript技巧

前台:

复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)</title>
<script type="text/javascript"><!--
var xmlHttp = null;//XmlHttp对象,Ajax核心
//创建一个Xml文档,向服务器发送.
function f(){
var xmlDoc = new ActiveXObject("Msxml2.DOMDocument.3.0");//1创建xml对象,Active控件.
xmlDoc.async = false;//设置异步还是非异步
xmlDoc.loadXML("<root><name>tree</name><pwd>pwd</pwd></root>");

sendXml( xmlDoc,'Default.aspx');
}
//向服务器发送Xml文档
function sendXml(xmlDoc,serverURL){
xmlHttp = new ActiveXObject ("Msxml2.XMLHTTP.3.0");//xmlhttp对象,异步传输.
var strDoc;
if (typeof(xmlDoc) == "object")//判断,这里是object
strDoc = xmlDoc.xml;
else
strDoc = xmlDoc;

xmlHttp.open ("POST","Default.aspx" ,true);//第三个参数如果为真,则调用onreadystatechange属性指定的回调函数。
xmlHttp.onreadystatechange=getData;
xmlHttp.send(strDoc);//向服务器发传的数据.
}
function getData(){
if (xmlHttp.readyState==4) //状态为4表示完成.
{
var strxml=xmlHttp.responseText;//取得返回的Xml
alert(strxml);
}
}

// --></script>
</head>
<body>
<input type="button" onclick="f();" value="request" />
</body>
</html>

Ajax Server:

复制代码 代码如下:

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Xml;

public partial class testXml_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(Request.InputStream);//接收到客户端传来的xml
XmlNode rootnode = xmldoc.DocumentElement;
XmlNode pwd = rootnode.SelectSingleNode("pwd");
pwd.InnerText = "changed";//服务器端改变xml文档内容

Response.Write(xmldoc.InnerXml);//返回修改后的Xml文档
Response.End();
}
}

时间: 2024-08-03 06:20:45

js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)_javascript技巧的相关文章

Go语言服务器开发之客户端向服务器发送数据并接收返回数据的方法_Golang

本文实例讲述了Go语言服务器开发之客户端向服务器发送数据并接收返回数据的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: package mysocket    import (      "fmt"      "io"      "net"  )    func MySocketBase() {      var (          host   = "www.apache.org"         

javascript 读取XML数据,在页面中展现、编辑、保存的实现_javascript技巧

首先考虑用什么方法做,考虑到三个方式:1.C#拼HTML构造table,修改和保存通过Ajax实现.2.XML+XSL,展现和修改用两个XSL文件来做,Ajax修改.保存XML.3.GridView控件. 经过细致考虑,首先第三方案GridView控件满足不了需求,因为XML格式多样,可能涉及到很多的行.列合并和行.列表头合并.第一方案太麻烦,坐起来是细致活和体力活,需求变动后不好修改.所以选择第二方案.开始学习XPath.XSLT.AJAX用js异步调用一般处理文件(ashx)的方式. 1.实

基于JS如何实现类似QQ好友头像hover时显示资料卡的效果(推荐)_javascript技巧

一.应用场景 鼠标hover弹出div,并且鼠标离开后不能马上隐藏,因为这个div上还有功能入口.比如: 鼠标经过好友列表中的好友头像时显示资料卡的效果如下所示: hover时显示二维码 二.实现 用如下这样一个简单的效果:鼠标hover到A上显示B来模拟 有2种实现方式,推荐第二种,第一种有弊端下面会说. 1.方法一 原理:把触发元素A和要显示元素B放于同一个父级元素内,鼠标经过父级元素时触发显示B.这样鼠标移动到B时仍然 处于该父级元素内,则div不会隐藏. 代码: <!DOCTYPE ht

JavaScript操作XML实例代码(获取新闻标题并分页,并分页)_javascript技巧

具体内容我没有做测试.仅供参考 代码 复制代码 代码如下: <?xml version="1.0" encoding="gb2312"?> <NEWS> <New id="1" name="测试新闻1" time="2010-2-18"> <NBody>新闻测试1新闻测试1</NBody> </New> <New id="

js操作ajax返回的json的注意问题!_javascript技巧

复制代码 代码如下: var result = unescape(xmlhttp.responseText); var j = eval("(" + result + ")"); 不可以 var j = eval( result ); JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧. JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或

js前端解决跨域问题的8种方案(最新最全)_javascript技巧

1.同源策略如下: URL 说明 是否允许通信 http://www.a.com/a.jshttp://www.a.com/b.js 同一域名下 允许 http://www.a.com/lab/a.jshttp://www.a.com/script/b.js 同一域名下不同文件夹 允许 http://www.a.com:8000/a.js http://www.a.com/b.js 同一域名,不同端口 不允许 http://www.a.com/a.js https://www.a.com/b.j

JS中页面与页面之间超链接跳转中文乱码问题的解决办法_javascript技巧

在原页面一张图片上添加了一个链接,链接中有中文,于是出现下面的情况:   解决办法是在tomcat的server.xml文件的中加入URIEncoding="utf-8",如下: <Connector URIEncoding="utf-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443

JS使用正则表达式过滤多个词语并替换为相同长度星号的方法_javascript技巧

本文实例讲述了JS使用正则表达式过滤多个词语并替换为相同长度星号的方法.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"

JS基于MSClass和setInterval实现ajax定时采集信息并滚动显示的方法_javascript技巧

本文实例讲述了JS基于MSClass和setInterval实现ajax定时采集信息并滚动显示的方法.分享给大家供大家参考,具体如下: setTimeout 用于延时器,只执行一次. setInterval:用于多次执行. 项目中引用到jquery.timers-1.2.js定时器,并且MSClass做信息定期滚动,每3分钟执行一次,执行三次左右,滚动的次数越来越快,原因在于timers和MSClass都用了setInterval, 都会再次添加一个setInterval,最后导致几个setIn