javascript - 检查 ul 中是否存在特定的 li 元素

标签 javascript

我有一个脚本,它将 li 元素添加到 ul 中,并根据用户在 select 元素中的选择为其分配一些属性。但是,我认为有必要确保 ul 中不存在 li 元素。但是,我不确定,但我认为数组没有为其分配变量,或者比较数组的 if 语句有问题。当然,我可能完全不在状态。我被难住了。

function anotherCounty(){    
  var newCounty = document.forms['newForm'].county.value;
  var ul = document.getElementById("counties"); 
  var items = ul.getElementsByTagName("li");
  var itemArray = new Array();
  for (var i = 0; i < items.length; i++){
    itemArray.push(items[i]);
  }

  if (itemArray.indexOf(newCounty)<'0'){//I've also tried ==-1 and <0
    var new_item = document.createElement("li");
    new_item.id = "addCounty[]";
    new_item.innerHTML = newCounty;
    ul.insertBefore(new_item, ul.firstChild);
  }  
}

最佳答案

您正在将字符串与 DOM 元素进行比较。我认为这就是您真正需要的:

itemArray.push(items[i].value);

关于javascript - 检查 ul 中是否存在特定的 li 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14096233/

相关文章:

javascript - 个体变量与对象

javascript - 从表格单元格的点击事件中获取自定义属性

javascript - 如何在 Redactor 插件中触发自定义方法?

javascript - 如何通过异步函数设置 react 父组件状态,然后将此状态作为 Prop 传递给子组件?

javascript - 正则表达式如何匹配不带字符的单词

javascript - Requirejs加载全部或部分依赖对象?

javascript - 使用 URI 和 key 生成 HMAC SHA 算法

javascript - 使用更改提要时,有没有办法在 PouchDB 中获取文档的所有修订?

javascript - 开 Jest 监视功能

Javascript原子系列操作