這似乎並不奏效,我得到了.remove()
線的Uncaught Type
錯誤:如何從HTML字符串中刪除元素?
JS:
var str = $("a").html();
var $html = $.parseHTML(str);
$("i",$html).remove();
$("div").html($html);
HTML:
<a href="#">Hello <i>Bob</i></a>
<div></div>
如何得到這個工作?
這似乎並不奏效,我得到了.remove()
線的Uncaught Type
錯誤:如何從HTML字符串中刪除元素?
JS:
var str = $("a").html();
var $html = $.parseHTML(str);
$("i",$html).remove();
$("div").html($html);
HTML:
<a href="#">Hello <i>Bob</i></a>
<div></div>
如何得到這個工作?
您可以克隆a
,更改克隆的html代碼並將其放入div
。
$(document).ready(function()
{
var clone = $("a").clone();
clone.find("i").remove();
$("div").html(clone);
});
你有正確的答案。 – 2014-09-10 18:46:21
只需使用.text()函數即可刪除HTML標籤。
var str = $("a").text();
$("a").text(str);
這將導致:
<a href="#">Hello Bob</a>
例子:http://jsfiddle.net/3s1c55w2/
它是如何工作的:
$("a").text();
將只檢索元素的文本,所以在你的它將返回Hello Bob
。Hello Bob
,只需使用.text(str)
再次設置a
標記文本值,其中str
是沒有html標記的值。似乎人們無法理解這個問題,請參閱編輯變量使用 – 2014-09-10 18:41:25
您的回答不起作用。 – 2014-09-10 18:43:42
我提供的jsFiddle清楚地表明它確實如此。我會檢查你的jQuery實現是否安裝正確。 – Axel 2014-09-10 18:45:27
也許他試圖從每個錨點刪除i標籤。
$("a").each(function(index) {
var str = $(this).text();
$(this).html(str);
});
無論如何,這可能是他得到一個類型錯誤,因爲parseHTML()將字符串解析爲DOM節點的數組。祝你好運!
如果你想刪除的斜體字並留下文字:
$("a").html($("a").html().replace(/<\/?i>/g, ""));
否則,使用或者刪除或者斷開其他的答案將是合適的。
你想完成什麼? – DeFeNdog 2014-09-10 18:33:34
看起來很簡單,但要確保您的jQuery庫已正確導入。如果我對jQuery的引用關閉,我通常會得到類似的錯誤。 – ckpepper02 2014-09-10 18:34:52
@DeFeNdog從「」中刪除'',非常簡單 – 2014-09-10 18:35:40