如何将此<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