2013-03-15 110 views
1

我在我的页面上有一个输入,我要求用户键入任何值,并根据他的输入值从数据库中显示出来。如何使输入搜索框上的向下箭头工作?

例如,如果用户键入p在输入框他显示程序员1程序员2就像它在google.com。这是我通过ajax做的。

我的问题是后程序员1个程序员显示2,在向下箭头键不把控制权交给程序员1而是不断的搜索框和控制用户必须点击这些选项中的任何一个。我希望用户能够使用向下箭头键回到他的搜索建议。

我试图实现Focus函数,但它似乎并没有工作,我真的不知道如何查找此信息?

代码:

<input type="text" name="searchbox" class="search_input" id="searchboxid" autocomplete="off" autofocus="on" onkeyup="suggest(this.value)" placeholder="Please search here..."/> 

任何帮助将非常感激。

+0

这个Javascript不是PHP,但第二个.. – user666 2013-03-15 06:32:25

+0

哦,是的,Javascri PT。我虽然在PHP中制作网站。谢谢。任何帮助? – user2172696 2013-03-15 06:38:58

+0

是的,我正在工作,但我在工作,变慢;) – user666 2013-03-15 06:39:54

回答

0

尝试使用autosuggest或自动完成。如果没有任何作用,请尝试通过十六进制代码键入向下箭头键。它有点黑,但它在很多情况下都有效,只有概率可能是AV,它可以将其识别为键盘记录器。

+0

@Samy,伟大的想法,我用这个方法很长一段时间,它的工作,直到基于Web的键盘记录器来到现场。 – 2013-03-15 06:56:16

1

只是一个建议。 而不是争取你自己的代码或去键入的东西。它更好地使用jquery自动完成。您可以轻松地移植您的代码,以适应Jquery auto complete.Its给出选项,您期待。 请参阅下面的URL。 http://jqueryui.com/autocomplete/

+0

Hi Samy, 非常感谢你的建议,这是一个很棒的主意,我目前正在努力实现它。我面临的唯一问题是,我无法将html(数据)输入到数组中。 – user2172696 2013-03-15 07:15:17

+0

你在谈论哪个数组? – Samy 2013-03-15 07:20:58

0

奥凯短诉说:我会在后面的代码(15分钟再予)

HTML:

<input type=""text id="r0"> 
<div id="r1">the damn results</div> 
<div id="r2">another dman result</div> 

的Jquery:

$("body").keydown(function (e) { 
    if (e.keyCode == 38) { //up-arrow 

//check wich one is focus 
//????? 
//r 
     if ($("#" + rId).length > 0) { 
      //focus on this element 
     } 
    } 

    if (e.keyCode == 40) { //down-arrow 

//check wich one is focus 
//????? 
//r 
     if ($("#" + rId).length > 0) { 
      //focus on this element 
     } 
    } 
}); 

生我会做出来的第二个

相关问题