我在查找和顯示數組中的字符串時遇到了一些問題。多年來沒有做過任何類型的代碼,所以我有點生疏。我的問題是這樣的:與indexOf for循環中的數組匹配字符串,錯誤
說我有一個這樣的數組:
var titles = ["0","Little Mouse", "1","Shaman Disciple", "2","Accomplished Shaman", "3","Shaman", "4","Little Pixie"];
(數字前的頭銜是指用作標題的ID,我只是用標題[I-1]去取,這是非常重要的,他們在那種順序!)
而且我想找到該數組中包含「小」,並顯示其相應的數字的每個字符串。我想出了這個,但它不會工作,我已經嘗試閱讀關於循環和寫東西的一堆,但我無法弄清楚。 我想出了這個腳本:
var x=document.getElementById("title").value;
var xs=x.toLowerCase();
for(var i = 0; i <= titles.length; i++){
if(xs.indexOf(titles[i].toLowerCase()) != -1){
document.getElementById("command").innerHTML = "/title " + titles[i-1];
} else {
document.getElementById("command").innerHTML = "no title like that";
}
}
它的設置去的onkeyup =「dostuff()」在一個文本框(我知道不可能是健康的還是不錯的代碼,但不管),而且它如果你輸入完整的字符串,它就不會顯示數組中的所有匹配。我知道我應該使用innerHTML + blahblah而不是innerHTML = blahblah,但它只是無限期地增加了標題!我該怎麼辦
對不起,對文本的牆!
你想要標題或編號作爲你的結果嗎?爲什麼你的陣列首先是這樣呢? – PHPglue