【发布时间】:2013-07-22 15:09:18
【问题描述】:
我正在制作一个刽子手游戏,我正在编写一个函数来搜索单词中的字母。因此,当用户点击一个字母时,我会抓取其中的文本并在所选单词中搜索它。
我写的代码是:
function searchLetter()
{
var aLetter = letter.toLowerCase();
var aChosenWord = chosenWord.toLowerCase();
//chosenWord is a global variable initialised in another function
if(aChosenWord.indexOf(aLetter) != -1)
alert("Letter is there")
else
{
alert("Letter not found")
}
}
变量“字母”是一个全局变量,根据点击的内容被赋予一个值:
$(function(){
$('a').click(function () {
letter = $(this).text();
$(this).slideUp();
searchLetter()
});
});
我不确定我在这里做错了什么。我放了一堆警报框,我的代码似乎正确地抓住了字母。
但是,当我运行它时,每次我得到 indexOf 的 -1 值;即在单词中找不到该字母。
我无法弄清楚我在这里做错了什么!
非常感谢任何输入,
谢谢
【问题讨论】:
-
变量
letter和chosenWord未在searchLetter()函数中定义。 -
@VisioN 根据问题,它显然是全球性的。查看 HTML 会很有帮助。字母取自某个
<a>标签的文本内容,每次都一样。 -
你有没有想过使用正则表达式?
-
@Misemefein 您是否尝试过单步执行您的代码以查看最终在 aChosenWord 和 aLetter 中的值?
标签: javascript jquery string search