如何使用MooTools和Request.HTML从远程页面获取元素?

时间:2010-02-08 17:09:52

标签: javascript mootools

我正在使用MooTools(项目的一部分)使用Request.HTML加载页面,除了我不想要整个页面,只是一个具有id的片段之外,它工作正常。

这是有问题的代码

var req = new Request.HTML({
    onSuccess: function( res ) {
        // according to the docs
        // res should be the node list of the remote response
        // I want to grab #myFragment

        var f = res.getElementById('myFragment');
        // res.getElementById is not a function

        var f = $(res).getElementById('myFragment');
        // $(res) is null ?

        var f = $$(res).getElementById('myFragment');
        // [null, null] ??


        // more code

    }
}).get('/myurl');

我很确定这一定是可能的,我可以抓住有类的元素。有谁知道怎么做。

谢谢)

2 个答案:

答案 0 :(得分:5)

我跳到了irc.freenode.net上的#mootools频道,并从< kamicane>获得了答案。自己

var req = new Request.HTML({
    onSuccess: function( responseTree, responseElements /*more*/  ) {
        // responseElements is the one I want
        //it's an array of elements which you can filter
        var f = responseElements.filter('#myFragment');

        // do stuff with my fragment

    }
}).get('/myurl');

答案 1 :(得分:3)

我对Mootools并不熟悉,但在深入研究Request.HTML文档时发现:

  

请求成功事件:onSuccess(responseTree,responseElements,responseHTML,responseJavaScript)

  

responseElements - (array)包含远程响应的所有元素的数组。

希望这会为解决问题提供正确的方向。