首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.removeChild()不工作

.removeChild()不工作
EN

Stack Overflow用户
提问于 2014-11-29 21:31:46
回答 2查看 578关注 0票数 2

我已经创建了一个可以添加的表单字段,但是我无法删除它。不知道为什么它不工作,我想我可能是通过了错误的参数?我尝试过许多变体。

代码语言:javascript
复制
<h3 class="color-text">What key fatures are you looking for?</h3>
<p class="contact-message">
    <textarea id="client-needs" placeholder="What key features are you looking to have within your website? ie. storefront, social media intigrtion, a blogging platform, content managment system, ect." name="client-needs" rows="5" cols="10"></textarea>
</p>


<script type="text/javascript">
var i = 1;
function addUrl(){
    if (i<3) {
        i++;
        var p = document.createElement('p');
        p.innerHTML = '<hr><textarea id="client-needs" placeholder="Add URL #'+i+'" name="client-needs'+i+'" rows="1" cols="10"></textarea><input type="button" value="Remove added URL" onclick="removeUrl(this)">';
        document.getElementById('examples').appendChild(p);

}
}

function removeUrl(textarea){
    document.getElementById('client-needs').removeChild(textarea.parentNode);
    i--;
}
</script>

<h3 class="color-text">Do you have and examples of what you want?</h3>
<p class="contact-message" id="examples">
    <textarea id="examples" placeholder="Do you know of any website like the one you want? ie. google.com, p5services.com, youtube.com" name="examples" rows="1" cols="10"></textarea>
</p>

<br>

<input type="button" value="Add url example" onclick="addUrl()">
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-29 21:36:01

使用removeChild是不正确的。要删除添加了内容的副翼,您应该这样做:

代码语言:javascript
复制
function removeUrl(textarea) {
    textarea.parentNode.parentNode.removeChild(textarea.parentNode);
    i--;
}

textarea.parentNode是一个要删除的p元素,不管它是什么,textarea.parentNode.parentNode都是这个段落的父元素。应该对父级调用removeChild,并且它需要父级的一个子级来删除。

演示:http://jsfiddle.net/7caysjw8/

票数 2
EN

Stack Overflow用户

发布于 2014-11-29 21:41:45

id是每个元素的唯一值,每个元素都有相同的名称ID。

代码语言:javascript
复制
var i = 1;
function addUrl(){
if (i<3) {
    i++;
    var p = document.createElement('p');
    p.innerHTML = '<hr><textarea id="client-needs'+i+'" placeholder="Add URL #'+i+'" name="client-needs'+i+'" rows="1" cols="10"></textarea><input type="button" value="Remove added URL" onclick="removeUrl('+i+')">';
    document.getElementById('examples').appendChild(p);

}
}

function removeUrl(id){
document.getElementById("client-needs"+id).remove();
i--;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27207365

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档