我是stackoverflow的新手。我用javascript寫了一個HTML代碼。代碼在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 ...」來獲得結果「美利堅合衆國」的上述代碼有什麼出路嗎?
謝謝
爲什麼不使用像[Autocomplete](http://jqueryui.com/autocomplete/)這樣的jQuery插件? –
@RasoolGhafari - OP想要學習的堅果和螺栓。您好MKT歡迎來到SO。不要使用''標籤:)它已被棄用(被淘汰)。 – Ben
你可以使用jquery自動完成,爲什麼要重新發明輪子 –