Javascript 移除ul标签的连续子级

Javascript 移除ul标签的连续子级,javascript,jquery,html,dom,Javascript,Jquery,Html,Dom,下面是我想要处理的html片段: <ul> <li data-action="CRMEVENTSTREAM" data-parameters="" data-id="3084314321" class="action"><span data-i18n="ui.EVENT_STREAM">Event Stream</span></li> <li data-action="APPCALENDARVIEW" data-p

下面是我想要处理的html片段:

<ul>
    <li data-action="CRMEVENTSTREAM" data-parameters="" data-id="3084314321" class="action"><span data-i18n="ui.EVENT_STREAM">Event Stream</span></li>
    <li data-action="APPCALENDARVIEW" data-parameters="" data-id="3084314323" class="action"><span data-i18n="ui.CALENDAR">Calendar</span></li>
    <li data-action="CRMCUSTOMERSVIEW" data-parameters="" data-id="3084314324" class="action"><span data-i18n="ui.CUSTOMERS">Customers</span></li>
    <li data-action="PROFILEEDITDLG" data-parameters="DM_CC" data-id="3084314325" class="action"><span data-i18n="ui.PROFILE_EDITOR">Profile Editor</span></li>
    <li class="k-separator"></li>
    <li data-action="VIEWCASHMOVEMENT" data-parameters="" data-id="3084314327" class="action"><span data-i18n="ui.CASH_MOVEMENT">Cash Movement</span></li>
    <li data-action="CRMAPPLICATIONLIST" data-parameters="" data-id="3084314328" class="action"><span data-i18n="ui.APPLICATION_LIST">Application List</span></li>
    <li class="k-separator"></li>
    <li data-action="CRMRELATIONEDITOR" data-parameters="" data-id="2998116122" class="action"><span data-i18n="ui.CUSTOMER_RELATION_EDITOR">Customer Relation Editor</span></li>
    <li data-action="CRMMULTIRELEDITOR" data-parameters="" data-id="2998116123" class="action"><span data-i18n="ui.MULTIPLE_RELATION_EDITOR">Multiple Relation Editor</span></li>
    <li data-action="CRMMASSRELEDITOR" data-parameters="" data-id="2998116124" class="action"><span data-i18n="ui.MASS_RELATION_EDITOR">Mass Relation Editor</span></li>
    <li class="k-separator"></li>
    <li class="k-separator"></li>
    <li class="k-separator"></li>
    <li data-action="CRMAPPLICATIONS" data-parameters="" data-id="2998116157" class="action"><span data-i18n="ui.CUSTOMER_APPLICATIONS">Customer Applications</span></li>
    <li data-action="CRMCALLLOG" data-parameters="" data-id="2998116187" class="action"><span data-i18n="ui.PHONE_CALLS">Phone Calls</span></li>
    <li data-action="CRMCRASEDITOR" data-parameters="" data-id="2998116189" class="action"><span data-i18n="ui.CR_STATUS_EDITOR">CR Status Editor</span></li>
    <li class="k-separator"></li>
    <li class="k-separator"></li>
</ul>
    事件流 日历
  • 客户
  • 配置文件编辑器
  • 现金移动
  • 应用程序列表
  • 客户关系编辑器 多重关系编辑器 质量关系编辑器
  • 客户应用程序 电话呼叫
  • CR状态编辑器
此html由来自web套接字的命令动态创建。但是我不希望li标签将classk-separator作为ul标签的第一个或最后一个子级。而且我不希望连续的li标记具有k分隔符

我的目标是拥有以下html:

<ul>
    <li data-action="CRMEVENTSTREAM" data-parameters="" data-id="3084314321" class="action"><span data-i18n="ui.EVENT_STREAM">Event Stream</span></li>
    <li data-action="APPCALENDARVIEW" data-parameters="" data-id="3084314323" class="action"><span data-i18n="ui.CALENDAR">Calendar</span></li>
    <li data-action="CRMCUSTOMERSVIEW" data-parameters="" data-id="3084314324" class="action"><span data-i18n="ui.CUSTOMERS">Customers</span></li>
    <li data-action="PROFILEEDITDLG" data-parameters="DM_CC" data-id="3084314325" class="action"><span data-i18n="ui.PROFILE_EDITOR">Profile Editor</span></li>
    <li class="k-separator"></li>
    <li data-action="VIEWCASHMOVEMENT" data-parameters="" data-id="3084314327" class="action"><span data-i18n="ui.CASH_MOVEMENT">Cash Movement</span></li>
    <li data-action="CRMAPPLICATIONLIST" data-parameters="" data-id="3084314328" class="action"><span data-i18n="ui.APPLICATION_LIST">Application List</span></li>
    <li class="k-separator"></li>
    <li data-action="CRMRELATIONEDITOR" data-parameters="" data-id="2998116122" class="action"><span data-i18n="ui.CUSTOMER_RELATION_EDITOR">Customer Relation Editor</span></li>
    <li data-action="CRMMULTIRELEDITOR" data-parameters="" data-id="2998116123" class="action"><span data-i18n="ui.MULTIPLE_RELATION_EDITOR">Multiple Relation Editor</span></li>
    <li data-action="CRMMASSRELEDITOR" data-parameters="" data-id="2998116124" class="action"><span data-i18n="ui.MASS_RELATION_EDITOR">Mass Relation Editor</span></li>
    <li class="k-separator"></li>
    <li data-action="CRMAPPLICATIONS" data-parameters="" data-id="2998116157" class="action"><span data-i18n="ui.CUSTOMER_APPLICATIONS">Customer Applications</span></li>
    <li data-action="CRMCALLLOG" data-parameters="" data-id="2998116187" class="action"><span data-i18n="ui.PHONE_CALLS">Phone Calls</span></li>
    <li data-action="CRMCRASEDITOR" data-parameters="" data-id="2998116189" class="action"><span data-i18n="ui.CR_STATUS_EDITOR">CR Status Editor</span></li>
</ul>
    事件流 日历
  • 客户
  • 配置文件编辑器
  • 现金移动
  • 应用程序列表
  • 客户关系编辑器 多重关系编辑器 质量关系编辑器
  • 客户应用程序 电话呼叫
  • CR状态编辑器
如何使用jquery操作dom


谢谢,

请注意,在取出第一个和最后一个兄弟姐妹之前,您希望移除相邻兄弟姐妹

$('li.k-separator + li.k-separator').remove();
$('li.k-separator:first-child, li.k-separator:last-child').remove();

注意,在取出第一个和最后一个兄弟姐妹之前,您希望移除相邻兄弟姐妹

$('li.k-separator + li.k-separator').remove();
$('li.k-separator:first-child, li.k-separator:last-child').remove();

你试过什么了吗?@agconti(自从你删除了答案后)-在这种情况下,最好参考
li
元素本身,而不是它们的
ul
父元素-您的
ul:last child
选择器不正确,将发现
ul
最后一个子元素,而不是该
ul
的最后一个子元素。您尝试过什么吗?@agconti(因为您删除了您的答案)-在这种情况下,最好参考
li
元素本身,而不是它们的
ul
父元素-您的
ul:last child
选择器不正确,将发现
ul
最后一个子元素,而不是
ul
的最后一个子元素。