2

我有这个 html 代码:

<div class="menu">
    <p class="menutext">
        <li class="pagenav">test
            <ul>
                <li class="page_item page-item-190 current_page_item">
                    <a href="http://test.com/">test2</a>
                </li>
            </ul>
        </li>
    </p>
</div> 

我将test在这一行删除:

<li class="pagenav">test

我怎么能用jquery做到这一点?

4

4 回答 4

5

你可以试试这段代码:

var cachedChildren = $('.pagenav').children();
$('.pagenav').empty().append(cachedChildren);

这将缓存所有子 DOM 元素,清空容器,然后附加缓存的 DOM 元素。

于 2013-03-03T13:10:22.567 回答
0

将“测试”包装成这样的跨度

<li class="pagenav"><span class="mytext">test</span>

和链接:

<a href="http://test.com/" class="update">test2</a>

然后,您可以通过执行以下操作删除测试值:

$('.update').on('click', function(e) {
    e.preventDefault();
    $(this).closest('.pagenav').find('.mytext').empty();
});
于 2013-03-03T13:10:14.213 回答
0

试试这个 :

$('.pagenav').html($('.pagenav').children());

小提琴http://jsfiddle.net/Fy4mJ/

于 2013-03-03T13:13:58.653 回答
0

在不接触 中的其他元素的情况.pagenav下,只针对文本,执行以下操作:

$('.pagenav').contents().filter(function() {
    return this.nodeType == 3;
}).remove();

小提琴

于 2013-03-03T13:17:52.370 回答