繁体   English   中英

从父母中移除多个孩子?

[英]Remove multiple children from parent?

我有一堆同名的元素,我试图通过 onchange function 同时删除它们。

这是 javascript:

<script type="text/javascript">
    function removeoldAccounts() {
        var e = document.getElementById("account_table")
        var accounts = document.getElementsByName("extraaccounts");
        e.removeChildren(accounts);
    }
</script>

(甚至不确定 removeChildren 是否是一个真正的命令)以及我将 onchange 操作赋予的元素:

<select id="piname" name="pi_name" onChange="removeoldAccounts" />

我试图删除的元素:

<tbody id="account_table">
    <tr>
        <td>Account Number<span>*</span>:</td>

        <td id="accounts">
            <select id="accountnum" name="account_number">
                <option value="5636745946254">5636745946254</option>
                <option value="23164847322">23164847322</option>
            </select> 
        </td>

        <td> 
            <input type="hidden" id="theValue3" value="81">
            <input type="button" value="Add More" onclick="addaccount()">
        </td>
    </tr>

    <tr id="80" name="extraaccount">
        <td>
            <select id="80" name="account_number">
                <option value="5636745946254">5636745946254</option>
                <option value="23164847322">23164847322</option>
            </select>
        </td>

        <td>
            <input type="text" size="20" name="account_comment80">
        </td>

        <td>
            <input type="button" onclick="removeaccount(80)" value="remove">
        </td>
    </tr>

    <tr id="81" name="extraaccount">
        <td>
            <select id="81" name="account_number">
                <option value="5636745946254">5636745946254</option>
                <option value="23164847322">23164847322</option>
            </select>
        </td>
        <td>
            <input type="text" size="20" name="account_comment81">
        </td>

        <td>
            <input type="button" onclick="removeaccount(81)" value="remove">
        </td>
    </tr>
</tbody>

抱歉,如果 html 有点草率,但基本上,一个tbody有一堆同名的td (额外帐户)

<script type="text/javascript">
function removeoldAccounts() {
    var accounts = document.getElementsByName("extraaccounts");
    var account;
    var parent;
    for (account in accounts) {
       parent = account.parentNode;
       parent.removeChild(account);
    }
}
</script>

和...

<select id="piname" name="pi_name" onChange="removeoldAccounts();" /> 

像这样的东西:

if ( e.hasChildNodes() )
{
    for(var i=0; i < e.childNodes.length; i++)
    {
        if(e.childNodes[i].nodeName == "extraaccounts") {
            e.removeChild(e.childNodes[i]);
        }
    } 
}

$('[name="extraaccounts"]').remove();

或者如果你想在删除之前改变一些东西

$('[name="extraaccounts"]').each(function(index,value){
//do smthing
$(value).remove
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM