我的页面中有以下元素:
<u>abc123</u>
如何选择该元素并将其内容'abc123'更改为其他内容?
我实际上要做的是在<u></u>
之间添加一个iframe。我知道这有点傻,但我对此有特殊要求。
第二个问题:是否可以将整个事物(<u>abc123</u>
)替换为iframe,或者iframe标记必须介于<u></u>
之间?
谢谢!
答案 0 :(得分:2)
按内容过滤(示例):
$("u").filter(function(){
return $(this).text() == "abc123";
}).html("<iframe>");
直接执行代码:
$("u").each(function(){
var $this = $(this);
if($this.text() == "abc123"){
$this.html("<iframe>");
}
})
如果您还要替换代码(.replaceWith()
),请使用.html()
代替<u></u>
。
.html()
方法会覆盖元素的当前内容。如果要在不删除以前数据的情况下添加新信息,请使用.append()
。
答案 1 :(得分:0)
你可以用这种方式用iframe替换元素(这是直接的JavaScript,但你也可以在jQuery中这样做):
<u id="test"></u>
var e = document.getElementById('test');
var iFrame = [...];
e.parentNode.insertBefore(iFrame, e);
e.parentNode.removeChild(e);
由于
答案 2 :(得分:0)
您可以使用Text()函数为您添加内容。
$("u").text(yourText);
按内容选择元素
$("u").each(function(i) {
if ($(this).text()=="abc123"){
//do what you want
}
});
答案 3 :(得分:0)
试试这个:
<强> JS 强>
$("u").html('<iframe src="http://www.google.com" width="300" height="300">Alternative context</iframe>');