Javascript 选择页面加载时的自动完成值
我有一个使用jQuery自动完成的输入框。我想给页面添加一些功能,这样它就可以在页面加载时接受一个值,然后在自动完成列表中选择最上面的选项。我创建了一个JSFIDLE来演示我的意思: 或者这里只是代码:Javascript 选择页面加载时的自动完成值,javascript,jquery,html,Javascript,Jquery,Html,我有一个使用jQuery自动完成的输入框。我想给页面添加一些功能,这样它就可以在页面加载时接受一个值,然后在自动完成列表中选择最上面的选项。我创建了一个JSFIDLE来演示我的意思: 或者这里只是代码: var myArray = ["apple - a ripe red fruit" , "banana - yellow fruit grown in bunches" , "orange - the name says it all"]; $("input#textbox").autoco
var myArray = ["apple - a ripe red fruit"
, "banana - yellow fruit grown in bunches"
, "orange - the name says it all"];
$("input#textbox").autocomplete({
source: myArray
});
$('#clickme').click(function() {
// select the #1 autocomplete option for the given text "apple"
// ???
});
使用html:
<input type="text" id="textbox" />
<input type="button" id="clickme" value="Set the value" />
因此,例如,如果页面加载了值“apple”,那么应该加载文本“apple-一个成熟的红色水果”。在这种情况下,发送整个短语“苹果-成熟的红色水果”不是一个可行的选择
我可以编写一个循环,循环遍历数组中的每个项并解析出第一个单词,但我希望jQuery有更好的方法,因为它已经可以在列表的顶部得到正确的答案
编辑:只是为了澄清一下,我想如果我可以通过按下一个按钮让它工作,我也可以通过在页面加载时传递一个值来让它工作。这就是我的示例使用按钮而不是页面加载的原因。自己编写它并不费多大力气,而且无论您如何查看它,您都必须在数组中迭代以找到您要查找的项
var myWord = "apple";
$('#clickme').click(function() {
for (item in myArray) {
if (myArray[item].indexOf(myWord) == 0)
$("#textbox").val(myArray[item]);
}
});