2016-08-18 58 views
1

我正在开发一个定制的壁虎驱动的android浏览器。我想在控制台中打印源代码。当我试图打印它显示[object HTMLDocument]如何从android或java中的[object HTMLDocument]字符串转换

的代码如下给出:

function onPageLoad(event) { 
    // the target is an HTMLDocument 
    let contentDocument = event.target; 
let browser = BrowserApp.getBrowserForDocument(contentDocument); 
    console.log("Page loaded: " + browser.contentTitle); 
    console.log("Page loaded content: " + browser.contentDocument); 

} 

输出是页面加载的内容:[object HTMLDocument]

我想打印的源代码中[object HTMLDocument]

回答

0

你有没有试过把它转换成字符串?例如,console.log(“Page loaded:”+ String(browser.contentTitle));

+0

结果显示为“页面加载:[object HTMLDocument]”。我想打印源代码。 –

0

试试这个:

HTMLEditorKit tmp = new HTMLEditorKit(); 
HTMLDocument doc = (HTMLDocument) tmp.createDefaultDocument(); 
StringWriter writer = new StringWriter(); 
tmp.write(writer, doc, 0, doc.getLength()); 
String s = writer.toString(); 
console.log(s); 

我希望这将有助于。

+0

没有得到结果。 s不打印。 –

+0

好吧,所以请尝试检查在这里:http://stackoverflow.com/questions/12035316/reading-entire-html-file-to-string - 这个StringBuilder答案为我工作过一次:) – lawstud

+0

没有得到任何结果。 –

0

啊,我明白了。尝试:

let contentDocument = event.target; 
console.log("Page loaded: " + contentDocument.title); 
var s = new XMLSerializer().serializeToString(contentDocument); 
console.log("Page loaded content: " + s); 

这对我至少工作(如果我正确理解你要打印的是什么)。

+0

输出显示“页面加载的内容:未定义”。代码是用JavaScript文件编写的。 –

+0

这是android studio中XMLSerializer的导入文件。我有一个错误是JavaScript错误:“ReferenceError:XMLSerializer未定义” –

+0

我认为它是“import org.xmlpull.v1.XmlSerializer;”,希望它能起作用! – TeachMeToAim

0

,而不是+console.log()功能console.log()也支持对象。只需要用逗号分隔即可。

console.log("Page loaded: " , browser.contentTitle); 
console.log("Page loaded content: " , browser.contentDocument); 
+0

输出为 I/Gecko:console.log:已加载页面:Asset Test I/Gecko:console.log:已加载页面的内容:HTMLDocument {“location”:{“href”:“resource:// android/assets /test.html","origin":"resource://android","protocol":"resource:","username":"","password":"","host":"android “” hostname“:”android“,”port“:”“,”pathname“:”/ assets/test.html“,”search“:”“,”hash“:”“}} –

+0

不可能使用逗号。 –

+0

它只是显示它包含的内容。 'browser.contentTitle'和'browser.contentDocument'不包含任何源代码。我猜'event.target'会给你源代码。 – vusan

相关问题