WEB开发网
开发学院网页设计JavaScript 用JavaScript与WebService实现网页部分数据XML传送... 阅读

用JavaScript与WebService实现网页部分数据XML传送

 2010-09-14 13:43:06 来源:WEB开发网   
核心提示: 下面将传递过来的XML应用XSL样式并显示在IE浏览器中,这是通过调用ApplyXslStyle()方法实现的,用JavaScript与WebService实现网页部分数据XML传送(3),该方法使用“MSXML2.XSLTemplate”组件实现解析操作,因为XS

下面将传递过来的XML应用XSL样式并显示在IE浏览器中,这是通过调用ApplyXslStyle()方法实现的。该方法使用“MSXML2.XSLTemplate”组件实现解析操作。因为XSL样式通常不会发生变化,所以本地缓存有助于提高XSL访问效率。代码如下:

function ApplyXslStyle()
{
  objXMLStyle = new ActiveXObject('MSXML2.FreeThreadedDOMDocument');
  objXMLStyle.async = false;
  objXMLStyle.resolveExternals = false;
 
  strXslt = '../../XSLT/Czrk.xsl';
  objXMLStyle.load(strXslt);
 
  if (objXMLStyle.readyState == 4)
  {
    if (objXMLStyle.parseError.errorCode != 0)
      document.all('ErrorMessage').innerHTML = '<b>* 错误</b> - 无法解析 XSLT 格式.';
    else
    {
      document.all('SearchResult').innerHTML = '';
      // 格式化并输出结果
      DisplayResult();
    }
  }
}

function DisplayResult()
{
  // 创建一个新的 XSLTemplate 对象并设置样式表
  var objTemplate = new ActiveXObject('MSXML2.XSLTemplate');
  objTemplate.stylesheet = objXMLStyle;
 
  // 创建处理器来处理 XML 数据
  var objProc = objTemplate.createProcessor();
 
  // 指明使用的 XML 数据对象
  objProc.input = objXMLData;
 
  // 应用 XSL 样式,并将结果赋值给字符串
  if (objProc.transform() == true)
  {
    var strResult = objProc.output
    document.all('SearchResult').innerHTML = strResult;   
  }
  else
    document.all('ErrorMessage').innerHTML = '<b>* 错误</b> - 无法对查询结果应用 XSLT 格式.';
}

这样,通过WebService传递过来的XML数据就经过XSL格式处理后显示在IE里面。下面给出几个截图:

图片(1)检索数据前

用JavaScript与WebService实现网页部分数据XML传送

图片看不清楚?请点击这里查看原图(大图)。

..............................................................................................

图片(2)检索数据后

用JavaScript与WebService实现网页部分数据XML传送

图片看不清楚?请点击这里查看原图(大图)。

..............................................................................................

图片(3)自定义检索条件

用JavaScript与WebService实现网页部分数据XML传送

图片看不清楚?请点击这里查看原图(大图)。

上一页  1 2 3 

Tags:JavaScript WebService 实现

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接