频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

通过Microsoft.XMLDOM实现简单的Ajax

来源: 作者:李华顺的博客 出处:巧巧读书 2008-02-09 进入讨论组
[IT168 技术文档]今天在在做公司的搜索关键词功能,因为哪个页面要做成静态HTML的,所以想了几个方法,昨天晚上快下班的时候上头才说要改,就急急忙忙地改了一下,
实现的方法是用<script type="text/javascript" src="动太态面+参数"></script>来读这些动态的数据,但是因为页面上搜索有条件,切换条件是直接用js来处理的,所以,在切换的时候,热门关键词都要跟在改变。但问题随之而来!<s cript> 这个区域我没有办法在页面不刷新的情况下重新调用它。所以一直没有解决。
今天试着被调用的态页面反回XML结构的,再用 Js去读这个结果,再输入,果然成功了。呵呵,也就是一个简单的Ajax应用.

动态页面生成XML的代码:
通过Microsoft.XMLDOM实现简单的Ajax(图一)protected void Page_Load(object sender, EventArgs e)
通过Microsoft.XMLDOM实现简单的Ajax(图二)通过Microsoft.XMLDOM实现简单的Ajax(图三)    通过Microsoft.XMLDOM实现简单的Ajax(图四){
通过Microsoft.XMLDOM实现简单的Ajax(图五)        Response.ContentType = "text/xml";
通过Microsoft.XMLDOM实现简单的Ajax(图五)
通过Microsoft.XMLDOM实现简单的Ajax(图六)    }
通过Microsoft.XMLDOM实现简单的Ajax(图一)
通过Microsoft.XMLDOM实现简单的Ajax(图三)通过Microsoft.XMLDOM实现简单的Ajax(图二)    生成XML#region 生成XML
通过Microsoft.XMLDOM实现简单的Ajax(图五)    private void CreateXML()
通过Microsoft.XMLDOM实现简单的Ajax(图七)通过Microsoft.XMLDOM实现简单的Ajax(图八)    通过Microsoft.XMLDOM实现简单的Ajax(图四){
通过Microsoft.XMLDOM实现简单的Ajax(图五)        string strContent = "";
通过Microsoft.XMLDOM实现简单的Ajax(图五)
通过Microsoft.XMLDOM实现简单的Ajax(图五)        for (int i = 0; i < 100; i++)
通过Microsoft.XMLDOM实现简单的Ajax(图七)通过Microsoft.XMLDOM实现简单的Ajax(图八)        通过Microsoft.XMLDOM实现简单的Ajax(图四){
通过Microsoft.XMLDOM实现简单的Ajax(图五)            strContent += "<item><word><![CDATA[" + "关键词" + i.ToString() + "]]></word><type>" + i.ToString() + "</type></item>";
通过Microsoft.XMLDOM实现简单的Ajax(图九)        }
通过Microsoft.XMLDOM实现简单的Ajax(图五)
通过Microsoft.XMLDOM实现简单的Ajax(图五)        WriteXML(strContent);
通过Microsoft.XMLDOM实现简单的Ajax(图九)    }
通过Microsoft.XMLDOM实现简单的Ajax(图六)    #endregion
通过Microsoft.XMLDOM实现简单的Ajax(图一)
通过Microsoft.XMLDOM实现简单的Ajax(图三)通过Microsoft.XMLDOM实现简单的Ajax(图二)    输出XML#region 输出XML
通过Microsoft.XMLDOM实现简单的Ajax(图五)    private void WriteXML(string strContent)
通过Microsoft.XMLDOM实现简单的Ajax(图七)通过Microsoft.XMLDOM实现简单的Ajax(图八)    通过Microsoft.XMLDOM实现简单的Ajax(图四){
通过Microsoft.XMLDOM实现简单的Ajax(图五)        Response.Write("<keywords>" + strContent + "</keywords>");
通过Microsoft.XMLDOM实现简单的Ajax(图九)    }
通过Microsoft.XMLDOM实现简单的Ajax(图六)    #endregion


Javascript读取的方法,FileName参数是被调用的动态页面,panelID 是最终要显示的区域ID名称
重点:xmlDoc.async="false"; 异步方式读取
通过Microsoft.XMLDOM实现简单的Ajax(图一)  function ReadKeywords(filename,panelID)
通过Microsoft.XMLDOM实现简单的Ajax(图二)通过Microsoft.XMLDOM实现简单的Ajax(图三)    通过Microsoft.XMLDOM实现简单的Ajax(图四){
通过Microsoft.XMLDOM实现简单的Ajax(图五)        var panel  = $(panelID);
通过Microsoft.XMLDOM实现简单的Ajax(图五)        //取得取后输出的区域,来自参数
通过Microsoft.XMLDOM实现简单的Ajax(图五)        var strContent = "";    
通过Microsoft.XMLDOM实现简单的Ajax(图五)        panel.innerHTML = "载入中通过Microsoft.XMLDOM实现简单的Ajax(图四)";
通过Microsoft.XMLDOM实现简单的Ajax(图五)        var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");       
通过Microsoft.XMLDOM实现简单的Ajax(图五)        xmlDoc.async="false";
通过Microsoft.XMLDOM实现简单的Ajax(图五)        //去读用动态页面,并读到结果的XML
通过Microsoft.XMLDOM实现简单的Ajax(图五)        xmlDoc.load(filename); 
通过Microsoft.XMLDOM实现简单的Ajax(图五)        //选定节点
通过Microsoft.XMLDOM实现简单的Ajax(图五)        var item = xmlDoc.selectNodes("keywords/item"); 
通过Microsoft.XMLDOM实现简单的Ajax(图五)        //没内容时的处理  
通过Microsoft.XMLDOM实现简单的Ajax(图五)        if(item == null)         
通过Microsoft.XMLDOM实现简单的Ajax(图五)            return ;                
通过Microsoft.XMLDOM实现简单的Ajax(图五)        if(item.length == 0)   
通过Microsoft.XMLDOM实现简单的Ajax(图五)            return ;    
通过Microsoft.XMLDOM实现简单的Ajax(图五)        //通过循环组合内容
通过Microsoft.XMLDOM实现简单的Ajax(图五)        for(var i=0;i<item.length;i++)
通过Microsoft.XMLDOM实现简单的Ajax(图七)通过Microsoft.XMLDOM实现简单的Ajax(图八)        通过Microsoft.XMLDOM实现简单的Ajax(图四){
通过Microsoft.XMLDOM实现简单的Ajax(图五)            strContent += "<span>"
通过Microsoft.XMLDOM实现简单的Ajax(图五)            strContent += "<a href='Search.aspx?KeyWord="+ item[i].selectSingleNode("word").text+"&type="+item[i].selectSingleNode("type").text+"'>"+ item[i].selectSingleNode("word").text+"</a>";
通过Microsoft.XMLDOM实现简单的Ajax(图五)            strContent += "</span> ";
通过Microsoft.XMLDOM实现简单的Ajax(图九)        }    
通过Microsoft.XMLDOM实现简单的Ajax(图五)        //显示到区域上面
通过Microsoft.XMLDOM实现简单的Ajax(图五)        panel.innerHTML = strContent;
通过Microsoft.XMLDOM实现简单的Ajax(图六)    }
通过Microsoft.XMLDOM实现简单的Ajax(图一)

应用效果: http://www.uctoy.com来自:http://www.qqread.com/ajax/x396638.html 更多文章 更多内容请看Ajax技术专题Ajax技术应用开发专题,或进入讨论组讨论。
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章