如何將此<p>
標記及其所有內容在javascript中刪除?在Javascript中刪除<p class =「classname」>?
說我有這樣的HTML代碼
<p class="classname">
<input name="commit" value="Get Value" type="submit"> <span>or Cancel</span>
</p>
現在我需要更換/ javascript中刪除它,沒有人知道我可以刪除它?
如何將此<p>
標記及其所有內容在javascript中刪除?在Javascript中刪除<p class =「classname」>?
說我有這樣的HTML代碼
<p class="classname">
<input name="commit" value="Get Value" type="submit"> <span>or Cancel</span>
</p>
現在我需要更換/ javascript中刪除它,沒有人知道我可以刪除它?
如果你必須這樣做,在普通的JavaScript它會因爲Internet Explorer的是痛苦的,其不支持getElementsByClassName()(也許在更新的版本?)。
var elems = document.getElementsByTagName('p');
var elemsLenght = elems.lenght;
for (var i = 0; i < elemsLenght; ++i) {
{
if (elems[i].className == 'classname')
{
elems[i].innerHTML = '';
}
}
但是如果可以的話,使用像jQuery,原型,道場等庫/框架..
假設您不想更改標記:最簡單的方法是使用庫。例如使用jQuery:
jQuery('.classname').remove();
否則,你需要去的元素,然後參考:
el.parentNode.removeChild(el);
前往元素的引用是棘手的部分。有些瀏覽器實現getElementsByClassName,但您必須自己編寫或使用第三方實現。
if (!document.getElementsByClassName) {
document.getElementsByClassName = function (className) {
/* ... */
}
}
如果您願意更改標記,那麼給元素一個id並使用document.getElementById來獲取對它的引用。
最容易與jQuery ** **或任何其他幾個JavaScript庫:HTTP:// prototypejs .org,http://code.google.com/closure/library等 - http://en.wikipedia.org/wiki/List_of_JavaScript_libraries – 2010-04-27 10:03:28
公平的觀點,我會承認我最初誤解了這個問題,認爲它說'jQuery'而不是'JavaScript'。這需要一些匆忙的編輯,我沒有調低'使用jQuery'。 jQuery非常喜歡很多StackOverflow用戶似乎已經影響了我的眼睛。 – Quentin 2010-04-27 10:07:25
試試這個:
<p id="someid">
<input name="commit" value="Get Value" type="submit"> <span>or Cancel</span>
</p>
function removeElement(id) {
var d = document.getElementById('myDiv');
var olddiv = document.getElementById(id);
d.removeChild(olddiv);
}
removeElement('someid');
使用jQuery,如果你想
$('p.classname').remove();
但是我沒有那個元素的ID – streetparade 2010-04-27 10:02:58
@streetparade:如果你不想使用'id'並且不想使用jquery,你應該像@David Dorward所建議的那樣。 – Sarfraz 2010-04-27 10:04:33
這是一個不安全的:http://www.jslint.com/lint.html#forin – Quentin 2010-04-27 10:08:58
class屬性需要一個空格分隔的類列表,所以'=='對於一般的getElementsByClassName實現來說不夠好(儘管在這個特殊情況下就足夠了) – Quentin 2010-04-27 10:09:47
你對這兩個評論都是正確的,目的是解釋如何在javascript中做到這一點,而不是開箱即用的代碼。 實現getElementsByClassName的最好方法是將其原型化爲本地javascript函數,並根據多個類檢查類名。 – 2010-04-27 10:12:51