我已写信输入动物名称
var name = document.getElementById('name').value;
var node = document.createElement("li");
var textnode=document.createTextNode(name);
node.appendChild(textnode);
document.getElementById("demo").appendChild(node);
如果已输入列表中的动物名称,我试图提醒我。
if(document.createElement(name !== null)){
alert();
这是html部分
<ul id="demo">List Of Animals Already Present</ul>
答案 0 :(得分:0)
好吧,你可以存储已经在数组中创建的动物,然后遍历每个动物以检查名称是否已经存在,如果没有,则创建一个新节点,就像你正在做的那样。
您尝试使用的if(document.createElement(name !== null))
语句不起作用,基本上它是说要创建一个新元素,但该元素将是true
或false
,因为返回name !== null
,因此不会创建或检查任何内容。
这里的代码可能对您有所帮助:
var animals = [];
document.getElementById('btn').onclick = function(){
var name = document.getElementById('name').value;
var alreadyExist = false;
for (var i = 0; i < animals.length; i++){
if (name == animals[i]){
alreadyExist = true;
break;
}
}
if (!alreadyExist){
animals.push(name);
var node = document.createElement("li");
var textnode = document.createTextNode(name);
node.appendChild(textnode);
document.getElementById("demo").appendChild(node);
document.getElementById('name').value = '';
}else{
alert('animal already in the list');
}
}
&#13;
<input id="name" value="" placeholder="Animal name..."/>
<input type='button' id='btn' value='create'/>
<ul id="demo">List Of Animals Already Present</ul>
&#13;