仅当文本字段包含';时,按下JavaScript键才起作用';

仅当文本字段包含';时,按下JavaScript键才起作用';,javascript,Javascript,当我输入文本并按enter键时,我希望文本框消失。但出于某种原因,它只有在我键入“;”时才会消失。任何其他角色似乎都不起作用 功能输入按下(e,字段){ 如果(e.keyCode==13){ var tb=document.getElementById(“搜索框”); 评估值(tb值); 如果(field.value.length>0){ document.getElementById('searchEvale').style.display='none'; } } } 只需删除不必要的ev

当我输入文本并按enter键时,我希望文本框消失。但出于某种原因,它只有在我键入“;”时才会消失。任何其他角色似乎都不起作用

功能输入按下(e,字段){
如果(e.keyCode==13){
var tb=document.getElementById(“搜索框”);
评估值(tb值);
如果(field.value.length>0){
document.getElementById('searchEvale').style.display='none';
}
}
}


只需删除不必要的
eval
功能即可

功能输入按下(e,字段){
如果(e.keyCode==13){
var tb=document.getElementById(“搜索框”);
如果(field.value.length>0){
document.getElementById('searchEvale').style.display='none';
}
}
}


注意,在大多数情况下使用eval是个坏主意。永远不要信任用户输入。为什么要对源自用户的字符串调用
eval
?这是个坏主意。我试过你的代码片段,它完全符合你的要求。如果您键入任何非数字、非语句的内容,eval()将使脚本失败。谢谢大家!现在一切都好了。解释一个答案和它为什么有效总是好的。不是每个人都能马上明白原因。非常感谢你的回答。帮我省去了很多麻烦@Daedalus抱歉,我通常先用代码片段回答,然后用解释更新。没关系!我可以从你写的东西看出问题出在哪里。我在用eval。没有必要对如此简短的事情进行解释@代达罗斯没有必要投反对票!:)你们两个,这里还有一个好提示:不要马上假设那些评论、投票的人。首先,我还没有就这个答案或问题投票。