我需要你的幫助與JavaScript正則表達式,再次。刪除所有空p標籤
有時我在DOM中有空的p標籤,我將它們全部刪除。
有的樣子:
<p></p>
其他人一樣:
<p> </p>
我覺得對於一個正則表達式的親本是很蹩腳的,但我不擅長與它:(
所以在此先感謝:)
我需要你的幫助與JavaScript正則表達式,再次。刪除所有空p標籤
有時我在DOM中有空的p標籤,我將它們全部刪除。
有的樣子:
<p></p>
其他人一樣:
<p> </p>
我覺得對於一個正則表達式的親本是很蹩腳的,但我不擅長與它:(
所以在此先感謝:)
你不需要使用正則表達式來實現這麼簡單的事情。無論如何,你很可能需要迭代所有'p'元素。像這樣的工作:
http://jsfiddle.net/mqchen/3pV2P/
$('p').each(function(index, item) {
if($.trim($(item).text()) === "") {
$(item).slideUp(); // $(item).remove();
}
});
我喜歡'如果(!$(item).text()。trim()){...}' –
工作正常,但在IE中不可用導致不知道修剪功能 –
@Yepp - 感謝您的擡頭!我已經更新了示例以使用jQuery的'trim()'函數。 – mqchen
好吧,這看起來不錯,但我現在如何刪除所有比賽? –
請編輯您的問題,添加您還希望代碼刪除空節點 - 這並不清楚問題。也可能想補充說,你使用jQuery,因爲這只是在標籤到目前爲止,我認爲你沒有使用它。 – pyvi
接受的答案是原因完全正確的,但因爲海報問如何使用正則表達式,這裏是一個版本(完整性如果你願意),做只是:
$('p').map(function() {
if(/^[\s ]*$/.test($(this).text())) {
$(this).remove();
}
});
注意一個更好的正則表達式版本可以通過使用jQuery regex selector extension
這就是被achived一些有時幫助的方法
$('p:empty').hide()
p:empty { display: none; }
@Yepp我不明白這一點。你爲什麼要這樣做,節省帶寬? – Deeptechtons