我是stackoverflow的新手。我用 html 编写了一个带有 javascript 的代码。该代码以 html 格式显示一个文本框,通过键入国家/地区名称,它可以帮助我们找到该国家的首都及其所在的大陆。这是代码:
<html>
<head>
<title>Test</title>
</head>
<body bgcolor="black" onload="document.getElementById('myedit').value=''">
<font color="white" size="4"><b>Please type the country name to find its capital and continent</b></font>
<br>
<input type="text" class="resizedTextbox" id="myedit" onchange="editChange()" onkeyup="editChange()" />
<div id="result"> </div>
<script type="text/javascript">
// country,capital,continent
var cName = new Array();
cName[0] = 'Germany,Berlin,Europe';
cName[1] = 'United States of America,Washington DC,North America';
cName[2] = 'India,New Delhi,Asia';
cName[3] = 'United Kingdom,London,Europe';
function editChange() {
obj = document.getElementById('myedit');
s = obj.value.toLowerCase();
res = '';
for (i=0; i<cName.length; i++) {
s2 = cName[i].toLowerCase().substr(0, s.length);
if (s2 == s && s != '') {
sp = cName[i].split(',');
res += '<table><tr><td><font color="white" size="5">'+sp[0]+', '+sp[2]+' '+sp[1]+'<font></td></tr></table>';
}
}
document.getElementById('result').innerHTML = res == '' ? '<font color="white" size="5"><i> Not found</i></font>' : res;
}
</script>
</body>
</html>
例如,如果我们在文本框中输入“u”,它会显示所有以“U”开头的国家,并且随着我们继续输入国家名称的前几个字符,我们会得到更具体的国家。但是如果是“美国”和其他国家名称中有两个或多个单词的国家,如果我们只输入“州”,上面的代码就不起作用。上面的代码有什么办法可以通过输入“uni...”或“st...”来得到“United States of America”的结果吗?
谢谢