2014-11-02 97 views
2

我有一些通過ajax調用獲取的html。我將html字符串分配給一個變量。我想要做的只是搜索這個變量,而不是整個文檔,用於預標籤並顯示文本。什麼是正確的方法來做到這一點?搜索變量的標籤

$(document).ready(function() { 
    var rawtext = htmlstringwithpretags 
    $(rawtext).find('pre').each(function() { 
     alert($(this).text()); 
    }); 
}); 
+0

您能給我們舉個例子? – Ismail 2014-11-02 16:13:01

+0

使用'substring()'和'indexOf()' – myfunkyside 2014-11-02 16:14:18

+0

你在實現中遇到了什麼問題? – 2014-11-02 16:34:32

回答

0

在這種情況下,你可能想看看$.parseHTML()

var rawtext = "hello wold<pre>pre text content</pre>"; 
var html = $.parseHTML(rawtext); 

$.each(html, function(i, el){ 
    if('PRE' == el.nodeName){ alert(el) } 
}); 
+1

就是這樣。我將alert更改爲:alert($(el).text())};因爲我需要文字。 – Jotter 2014-11-02 18:01:41

1

試試這個

htmlstring有一個pre標籤

var rawtext = "hello wold<pre>pre text content</pre>"; 
alert($("<div>"+rawtext+"</div>").find('pre').text()); 

htmlstring有許多pre標籤,你想迭代,然後用這個

$("<div>"+rawtext+"</div>").find('pre').each(function() { 
     alert($(this).text()); 

    }); 
+0

這是爲變量創建一個新的div?我可以在這裏迭代使用.each嗎? – Jotter 2014-11-02 16:24:06

+0

你的意思是說,htmlstring有多個pre標籤,你想獲得所有的值? – Asik 2014-11-02 16:30:05

0

試試這個:

$("<div>"+rawtext+"</div>").find("pre").each(function(){ 
    alert($(this).text()); 
});