如何使用jquery读取文件并获取头部和身体的内容?

问题描述:

我正在尝试阅读一个html文件,并使用jquery获取头部和身体标记的内容。但对我来说没有运气。这是我使用的代码。它为我找到了一个id或一个类的内容。但不是与头部和身体标签?希望你们能尽快帮助我。谢谢。如何使用jquery读取文件并获取头部和身体的内容?

$.get(file, function(response) { alert(response); 
     alert($(response).filter('body').html()); 
        //is null 
        alert($(response).filter('head').html()); 
        //is null 
    }); 
+0

提醒事情可能会非常恼人。你应该使用'console.log()'(假设你有Firefox或Chrome)。 – mowwwalker 2012-03-19 04:36:18

我正在使用手工过滤功能。基本上,它会将头像,htmls和元标记转换为div和段落,这样他们就不会迷路了。这是我的功能,你可能想要适应其他的东西。

function filterInput(sx){ 

    var t = new Date().getTime(); 
    var strip_only = function (input,only){only=(((only||"")+"").toLowerCase().match(/<[a-z][a-z0-9]*>/g)||[]).join('');var tags=/<\/?([a-z][a-z0-9]*)\b[^>]*>/gi,commentsAndPhpTags=/<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;return input.replace(commentsAndPhpTags,'').replace(tags,function($0,$1){return only.indexOf('<'+$1.toLowerCase()+'>')===-1?$0:'';});}; 

    sx = sx.replace(new RegExp('<html.*?>','gmi'),'').replace(new RegExp('</html>','gmi'),''); 
    /* strip out head & body tags */ 
    sx = sx.replace(new RegExp('<head.*?>','gmi'),'<div id="u_'+t+'_head">') 
     .replace(new RegExp('</head>','gmi'),'</div>') 
     .replace(new RegExp('<body.*?>','gmi'),'') 
     .replace(new RegExp('</body>','gmi'),''); 
    /* replace title tag */ 
    sx = sx.replace(new RegExp('<title.*?>','gmi'),'<p id="u_'+t+'_title">') 
     .replace(new RegExp('</title>','gmi'),'</p>'); 
    /* replace meta tags */ 
    sx = sx.replace(new RegExp('<meta','gmi'),'<p'); 
    sx = strip_only(sx,'<img><link><style>'); 

    /* wrap */ 
    sx = $("<div>"+sx+'</div>'); 

    return sx; 
} 
+0

好吧,如果我使用这个,我该如何改变这个来找到头部或身体的内容? – guitarlass 2012-03-19 04:56:45

+0

删除'var t = new Date()。getTime()'并将其作为函数参数(函数filterInput(sx **,t **))传递。然后使用'var t = new Date()。getTime(); var html = filterInput(response.responseText,t); var head = $('div#u _'+ t +'_ head',html); var title = $('p#u _'+ t +'_ title'); // ...'。对于身体删除身体/身体标记,并使其看起来像头,只需阅读代码,它很容易,它是有道理的。 – 2012-03-19 07:03:13