2011-10-18 23 views
0

我在我的網頁以下元素:如何通過其內容選擇元素?

<u>abc123</u> 

如何選擇元素,並更改其內容「ABC123」別的東西?

我實際上想要做的是在<u></u>之間添加一個iframe。我知道這很愚蠢,但我對此有特殊要求。

第二個問題:是否可以將整個事件(<u>abc123</u>)替換爲iframe,或iframe標記必須在<u></u>之間?

謝謝!如果要同時更換標籤(<u></u>

$("u").each(function(){ 
    var $this = $(this); 
    if($this.text() == "abc123"){ 
     $this.html("<iframe>"); 
    } 
}) 

使用.replaceWith()而不是.html()

回答

2

按內容(例如)過濾器:

$("u").filter(function(){ 
    return $(this).text() == "abc123"; 
}).html("<iframe>"); 

直接執行代碼。

.html()方法覆蓋元素的當前內容。如果您想添加新信息而不刪除以前的數據,請使用.append()

+0

偉大的解決方案,謝謝;)我學到了一些東西 – Genjuro

0

你可以用一個iframe替換元素這種方式(這是直接的JavaScript,但你可以做,在jQuery的也可以):

<u id="test"></u> 

var e = document.getElementById('test'); 
var iFrame = [...]; 

e.parentNode.insertBefore(iFrame, e); 
e.parentNode.removeChild(e); 

感謝

0

你可以添加內容使用的要Text()函數。

$("u").text(yourText); 

供其內容選擇的元素

$("u").each(function(i) { 
    if ($(this).text()=="abc123"){ 
    //do what you want 
} 
    }); 
0

試試這個:

JS

$("u").html('<iframe src="http://www.google.com" width="300" height="300">Alternative context</iframe>'); 
相關問題