javascript - 如何查找其类不包含子字符串的元素

标签 javascript html dom

我打算在页面中查找其类不包含特定名称的元素。我必须使用 DOM 定位器和“getElementsByClassName”。例如,我有以下列表:

<ol id="selectable">
    <li class="ui-state-default ui-selectee" name="one">1</li>
    <li class="ui-state-default ui-selectee" name="two">2</li>
    <li class="ui-state-default ui-selectee" name="three">3</li>
    <li class="ui-state-default ui-selectee" name="four">4</li>
    <li class="ui-state-default ui-selectee ui-selected" name="five">5</li>
    <li class="ui-state-default ui-selectee" name="six">6</li>
    <li class="ui-state-default ui-selectee ui-selected" name="seven">7</li>
    <li class="ui-state-default ui-selectee" name="eight">8</li>
    <li class="ui-state-default ui-selectee" name="nine">9</li>
    <li class="ui-state-default ui-selectee" name="ten">10</li>
    <li class="ui-state-default ui-selectee ui-selected" name="eleven">11</li>
    <li class="ui-state-default ui-selectee" name="twelve">12</li>
</ol>

我想找到不包含“ui-selected”的元素。这可以使用 CSS 的“not”和/或其他方法轻松完成,但这里我必须使用 DOM。

谢谢

最佳答案

尝试使用document.querySelectorAll():not CSS selector :

// Check your browser's console output for result
console.log(
    document.querySelectorAll('#selectable :not(.ui-selected)')
);
<ol id="selectable">
    <li class="ui-state-default ui-selectee" name="one">1</li>
    <li class="ui-state-default ui-selectee" name="two">2</li>
    <li class="ui-state-default ui-selectee" name="three">3</li>
    <li class="ui-state-default ui-selectee" name="four">4</li>
    <li class="ui-state-default ui-selectee ui-selected" name="five">5</li>
    <li class="ui-state-default ui-selectee" name="six">6</li>
    <li class="ui-state-default ui-selectee ui-selected" name="seven">7</li>
    <li class="ui-state-default ui-selectee" name="eight">8</li>
    <li class="ui-state-default ui-selectee" name="nine">9</li>
    <li class="ui-state-default ui-selectee" name="ten">10</li>
    <li class="ui-state-default ui-selectee ui-selected" name="eleven">11</li>
    <li class="ui-state-default ui-selectee" name="twelve">12</li>
</ol>

JSFiddle

关于javascript - 如何查找其类不包含子字符串的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42193244/

相关文章:

php - 在 IE7 中刷新或清除 Ajax "temp"内容的最佳方法

java - 是否可以将 Jhipster 应用程序转变为移动应用程序?

javascript - 带有元素数量的垂直 Bootstrap 轮播

javascript - 我很难通过 Javascript 引用正确的 DOM 节点。有什么问题吗?

javascript - 简单的谷歌浏览器扩展来检测网页上的点击 - 没有显示警报(错误)

javascript - jQuery获取div的值并显示到其他div

javascript - 如何从整个圆顶中删除knockoutjs绑定(bind)

javascript - 平板电脑的工具提示或弹出窗口?

javascript - 如何区分生成的元素和选定的元素?

javascript - getRangeAt()—如果未选择任何文本,则错误