JavaScript:
var array = [
['shoe', 1],
['shirts', 2]
];
$('input#item').keyup(function()
{
var value = $(this).val();
$('#value').html('value from array');
});
HTML:
<input type="text" name="item" id="item" />
<br />
Value: <span id="value"></span>
我想找到用户在打字时正在搜索的项目的值。
示例:
a) 当用户输入 s
时,它应该输出 1
,因为它是数组中的第一个值。
b) 当用户输入 shi
时,它应该输出 2
,因为它匹配 shirts
。
c) 如果没有匹配,则应输出 no match
。
注意: 如果可能的话,我想保留数组的结构。
最佳答案
$('input#item').keypress(function()
{
var value = $(this).val();
var result = 'no match';
for (var i = 0; i < array.length; i++) {
if (array[i][0].indexOf(value) != -1) {
result = array[i][1];
break;
}
}
$('#value').html(result);
});
关于javascript - 如何找到用户在打字时正在搜索的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6424017/