使用Javascript获取页面的完整源代码

时间:2013-08-01 11:14:16

标签: javascript jquery html dom

我正在尝试捕获并将页面中的所有JS错误发布到Django视图。我正在做这样的事情。

<script>
    window.onerror = function(errorMsg, file, lineNumber) {
        post_data = {error: errorMsg, file: file, 
        location: window.location.href, lineNumber: lineNumber,
        ua: navigator.userAgent};
        jQuery.post('/js_errors/', post_data);
    }
</script>

问题:我还想添加实际行。如果给出行号,我如何从页面源获取行?

到目前为止,我已经尝试过这种方法(考虑到所有类型的换行符):

document.getElementsByTagName('html')[0].outerHTML.split(/\r?\n/)[lineNumber];

但是,这并没有给我正确的行号。我在这里缺少什么?

2 个答案:

答案 0 :(得分:1)

不是特别有效,但应该得到你想要的东西(即doctype和all):

lineNumber = 23;
errorLine = null;
$.post("",function(source) {
    errorLine = source.split(/\r?\n/)[lineNumber];
});

答案 1 :(得分:-4)

使用jquery方法$('#divid_where_you_want_to_extract).load('url');