0

我正在尝试将用户在文本框中输入的文本与数组中的元素进行比较,但遇到了困难。

function checkAns()
{
var str = imageArray[randNum];
var n = str.indexOf(document.getElementById('textBox').value);
if(n == -1)
{
    alert("Wrong Answer")
}
else
{
    alert("Right Answer")
}
}

用户输入应该匹配数组元素中指定字符串的一部分并返回正确答案,或者根本不匹配并返回错误答案。

<input type=”text” id=”textBox” value=””&gt;
<input type=”button” value=”Check” onclick=”checkAns()”&gt;

如果有用,我为我的文本框和按钮添加了代码。

4

1 回答 1

0

请检查您究竟需要得到什么。这个:

if (document.getElementById('textBox').value === str) {
    // text from array element is the same as in value
} else {
    // ... differs from value
}

或这个:

if (str.indexOf(document.getElementById('textBox').value) > -1) {
    // text from value exists in array element
} else {
    // ... does not exist
}

或者也许是这样:

if (document.getElementById('textBox').value.indexOf(str) > -1) {
    // text from array element exists in value
} else {
    // ... does not exist
}
于 2012-12-05T16:36:59.027 回答