Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有类似于JavaScript的simple_html_dom.php的东西?_Javascript_Parsing_Dom_Titanium_Appcelerator - Fatal编程技术网

是否有类似于JavaScript的simple_html_dom.php的东西?

是否有类似于JavaScript的simple_html_dom.php的东西?,javascript,parsing,dom,titanium,appcelerator,Javascript,Parsing,Dom,Titanium,Appcelerator,我正在使用Appcelerator Titanium构建一个iPhone应用程序,我需要将一个HTML字符串(可能包含无效的HTML,比如缺少标记,这不是我的错)转换为DOM对象。在这个DOM元素中,我需要找到一个特定的,并将这个的内容放在一个WebView中 无论如何,我正在寻找类似PHP脚本的东西,在DOM中搜索这个。我希望脚本扫描(无效)HTML字符串,并获取的内部HTML 如何在JavaScript中最好地做到这一点?下面的代码是基本的字符串到DOM转换器。有关详细说明,请参见链接答案

我正在使用Appcelerator Titanium构建一个iPhone应用程序,我需要将一个HTML字符串(可能包含无效的HTML,比如缺少标记,这不是我的错)转换为DOM对象。在这个DOM元素中,我需要找到一个特定的
,并将这个
的内容放在一个WebView中

无论如何,我正在寻找类似PHP脚本的东西,在DOM中搜索这个
。我希望脚本扫描(无效)HTML字符串,并获取
的内部HTML


如何在JavaScript中最好地做到这一点?

下面的代码是基本的字符串到DOM转换器。有关详细说明,请参见链接答案

function string2dom(html, callback){    
    /* Create an IFrame */
    var iframe = document.createElement("iframe");
    iframe.style.display = "none";
    document.body.appendChild(iframe);

    var doc = iframe.contentDocument || iframe.contentWindow.document;
    doc.open();
    doc.write(html);
    doc.close();

    function destroy(){
        iframe.parentNode.removeChild(iframe);
    }
    if(callback) callback(doc, destroy);
    else return {"doc": doc, "destroy": destroy};
}
此代码段不会清理HTML。将执行脚本,并加载外部源。有关代码和HTML消毒剂的说明,请访问

用法(示例),Fiddle::

string2dom(“测试”,功能(文档,销毁){
警报(文件标题);/*警报:“测试”*/
破坏();
});
var测试=string2dom(“”);
警报(test.doc.getElementById(“secret”).tagName);/*警报:“分区”*/
test.destroy();

谢谢您的回复。但是,Tianium无法识别
文档
属性,因为它不存在。是否可以用另一种方式将字符串转换为DOM?Tianium不提供任何DOM方法。如果您想要的文档片段结构良好,那么使用RegExp不会有什么坏处。否则,我建议看一下Appcelerator Q&a:
string2dom("<html><head><title>Test</title></head></html>", function(doc, destroy){
    alert(doc.title); /* Alert: "Test" */
    destroy();
});

var test = string2dom("<div id='secret'></div>");
alert(test.doc.getElementById("secret").tagName); /* Alert: "DIV" */
test.destroy();