我想设置在此搜索脚本中应忽略大写和小首字母的使用。所以,如果我写“hello”或“HEllo”......它应该带来相同的结果。
这是脚本:
<input type="text" class="boxformal boxformal-cf" placeholder="Diese Seite durchsuchen ..." onkeyup="
for( var elms=document.getElementById('content')
.getElementsByTagName('article')
, L=elms.length
; L--
; elms[L].className= ~elms[L].textContent.indexOf(this.value)
? found='searchopt kurse-standart standart-grau groesse-15'
: 'donotshow'
);
this.nextSibling.innerHTML= found ? '' : 'Es wurde nichts gefunden!' ;
">
感谢您的帮助!
P.s。:有些短语是德语:)
答案 0 :(得分:5)
如何更换琴弦的外壳?
<input type="text" class="boxformal boxformal-cf" placeholder="Diese Seite durchsuchen ..." onkeyup="
for( var elms=document.getElementById('content')
.getElementsByTagName('article')
, L=elms.length
; L--
; elms[L].className= ~elms[L].textContent.toLowerCase().indexOf(this.value.toLowerCase())
? found='searchopt kurse-standart standart-grau groesse-15'
: 'donotshow'
);
this.nextSibling.innerHTML= found ? '' : 'Es wurde nichts gefunden!' ;
">
答案 1 :(得分:0)
啊,来自here的后续问题。
如果我们想以不区分大小写的方式完成这项工作,我们就不能再使用正则表达式来躲避。所以我们创建一个并将其设置为不区分大小写:
<!DOCTYPE html>
<html><head><title>Homework</title>
<style>
.searchopt {display:block;}
.donotshow {display:none;}
</style>
</head><body>
Search: <input type="text" onkeyup="
for( var elms= document.getElementById('content')
.getElementsByTagName('p')
, L= elms.length
, found= 0
, rxp= new RegExp(this.value, 'i')
; L--
; elms[L].className= rxp.test(elms[L].textContent)
? found='searchopt'
: 'donotshow'
);
this.nextSibling.innerHTML= found ? '' : ' not found' ;
"><span></span><div id="content">
<p class="searchopt">The lazy gray fox crawled under the old tree.</p>
<p class="searchopt">It was a pretty old fox.</p>
<p class="searchopt">This is why he was gray.</p>
</div>
</body></html>
这比在每个按键上一遍又一遍地转换大量未知字符串(内容)的大小更好(在几次搜索后几乎会杀死用户浏览器的东西,因为它们所有新的字符串)!