WEB开发网: [IT168 技术文档]今天在在做公司的搜索关键词功能,因为哪个页面要做成静态HTML的,所以想了几个方法,昨天晚上快下班的时候上头才说要改,就急急忙忙地改了一下,实现的方法是用<script
赞助商链接
中资源
>> 最新文章
>> 赞助商
>> 热门文章
WEB开发网文章阅读

通过Microsoft.XMLDOM实现简单的Ajax

作者:未知 文章来源:WEB开发者 更新时间:2008-2-9 21:26:11
[IT168 技术文档]今天在在做公司的搜索关键词功能,因为哪个页面要做成静态HTML的,所以想了几个方法,昨天晚上快下班的时候上头才说要改,就急急忙忙地改了一下,
实现的方法是用<script type="text/javascript" src="动太态面+参数"></script>来读这些动态的数据,但是因为页面上搜索有条件,切换条件是直接用js来处理的,所以,在切换的时候,热门关键词都要跟在改变。但问题随之而来!<s cript> 这个区域我没有办法在页面不刷新的情况下重新调用它。所以一直没有解决。
今天试着被调用的态页面反回xml(标准化越来越近了)结构的,再用 Js去读这个结果,再输入,果然成功了。呵呵,也就是一个简单的ajax(动态网站静态化)应用.

动态页面生成xml(标准化越来越近了)的代码:
protected void Page_Load(object sender, EventArgs e)
    {
        Response.ContentType = "text/xml(标准化越来越近了)";

    }

    生成xml(标准化越来越近了)#region 生成xml(标准化越来越近了)
    private void Createxml(标准化越来越近了)()
    {
        string strContent = "";

        for (int i = 0; i < 100; i++)
        {
            strContent += "<item><word><![CDATA[" + "关键词" + i.ToString() + "]]></word><type>" + i.ToString() + "</type></item>";
        }

        Writexml(标准化越来越近了)(strContent);
    }
    #endregion

    输出xml(标准化越来越近了)#region 输出xml(标准化越来越近了)
    private void Writexml(标准化越来越近了)(string strContent)
    {
        Response.Write("<keywords>" + strContent + "</keywords>");
    }
    #endregion


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

应用效果: http://www.uctoy.com来自:http://www.cncms.com.cn/ajax(动态网站静态化)/x396638.html
百度搜索中共有相关主题
[阅读:次] [返回上一页] [打 印]
  • 相关文章
  • 本类热门