簡體   English   中英

提取包含特定單詞javascript的文本塊中的特定行

[英]Extracting specific lines in a chunk of text which contains a specific word, javascript

我目前有一大堆字符串,實際上是存儲在其中的html源代碼。 我現在想做的是讀取需要使用JavaScript的特定標簽。 誰能幫我這個忙,我是編程新手,所以我不太確定該怎么做。


有問題的代碼:

if (request.readyState == 4) {
    var html_text = request.responseText;
    var parent = document.createElement('div');
    parent.innerHTML = html_code;
    var metas = parent.getElementsByTagName('meta');
    var meta;
    for (var i = 0; i < metas.length; i++) {
        meta = metas[i];
        alert(meta.property);
        alert(meta.content);
    }
}

元內容有效,但僅返回的meta屬性未定義。

使用DOM(文檔對象模型)API。 Mozilla的開發網絡 (Mozilla的娘家姓開發中心)是一個很好的起點,一個全能的參考。


我現在想做的是讀取需要使用JavaScript的特定標簽。

var text = /* whatever string that contains HTML */;

首先,您需要解析字符串:

var parent = document.createElement('div');
parent.innerHTML = text;

然后,您可以搜索所需的任何元素。 假設您正在尋找<table>元素。

var tables = parent.getElementsByTagName('table');

現在,您可以對找到的每個元素執行所需的任何操作:

var table;
for (var i=0, len=tables.length; i<len; i++)
{
    table = tables[i];
    // do something with the element
}

相關API文檔

XML節點的屬性不容易用作DOM對象屬性。 使用getAttribute

范例: http //jsfiddle.net/mendesjuan/6Pdmw/

var node = document.createElement('div');
node.innerHTML = "<meta property='prop1' content='cont1'>"+
                 "<meta property='prop2' content='cont2'>";
var metas = node.getElementsByTagName('meta');    
for (var i = 0; i < metas.length; i++) {
    var meta = metas[i];
    alert(meta.getAttribute("property"));
    alert(meta.getAttribute("content"));
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM