3 回答

TA貢獻1719條經驗 獲得超6個贊
您需要將該字符串轉換為 HTML 頁面,然后定位“p”元素并提取其文本。就像是:
var p = "<p> info: 111,<br /> key: fdfd ,<br /> city: ,<br /> suburb: ,<br /> job: </p>"
var parser = new DOMParser();
var htmlDoc = parser.parseFromString(p, 'text/html');
console.log(htmlDoc.body.getElementsByTagName("P")[0].innerText);

TA貢獻1998條經驗 獲得超6個贊
這更像是對另一種常見方式的警告。
ATD 提到的 的常見替代方法DOMParser()是創建一個元素,將其添加為innerHTML并使用 獲取它textContent。
let tParser = document.createElement('div');
tParser.innerHTML = "<p> info: 111,<br /> key: fdfd ,<br /> city: ,<br /> suburb: ,<br /> job: </p>";
console.log(tParser.textContent)
但請注意使用innerHTML. 一切都被解釋為 HTML 并從您的站點執行。這意味著,不要將它添加到 DOM 或更好,盡量完全避免它。
此外 MDN 提到以下內容:
如果您的項目將接受任何形式的安全審查,那么使用 innerHTML 很可能會導致您的代碼被拒絕。例如,如果您在瀏覽器擴展中使用 innerHTML 并將擴展提交到 addons.mozilla.org,它將不會通過自動審核流程。

TA貢獻2003條經驗 獲得超2個贊
您的問題已經得到解答:
function extractContent(s) {
var span = document.createElement('span');
span.innerHTML = s;
return span.textContent || span.innerText;
};
alert(extractContent("<p>Hello</p><a href='http://w3c.org'>W3C</a>"));
添加回答
舉報