从自动填充JavaScript&中选择第一个值。 PHP

时间:2013-12-18 23:11:36

标签: javascript php jquery html autocomplete

在下面的屏幕截图中我显示城市列表列表,当我尝试输入“布里斯班”时,它显示名为“布里斯班”的城市和郊区列表。

enter image description here

现在我有以下用于自动完成功能的JavaScript。

function selectAutocomplete(e, t) {
    switch (e.target.value = t.item.label, $("input#destinationId").val(""), $("input#hotel_id").val(""), $("input#region_id").val(""), t.item.type) {
    case "1C":
        break;
    case "2S":
        $("input#region_id").val(t.item.value);
        break;
    case "3D":
        $("input#destinationId").val(t.item.value);
        break;
    case "4H":
        $("input#hotel_id").val(t.item.value)
    }
    StopEvent(e)
}

 $("input#keywords").bind("keydown", function (e) {
            13 != e.keyCode && ($("#hotel_id").val(""), $("#destinationId").val(""), $("#region_id").val(""))

http://pastebin.com/ThVpLSvC处的完整JS代码 网站链接https://dev.ther8server.com(请原谅自签名SSL)

任何人都可以帮我自动填写文本框,也就是当有人最终输入布里斯班并点击搜索时,它应该自动click(因为其他隐藏的字段也被填充)自动完成第一项并且应该填写名为Keywords

的文本框

HTML代码

<input type="hidden" id="destinationId" name="destinationId" value=""/>
<input type="hidden" id="hotel_id" name="hotel_id" value=""/>
<input type="hidden" id="region_id" name="region_id" value=""/>
<input type="text" id="keywords" value="Enter destination or hotel name" placeholder="Enter destination or hotel name" name="keywords" class="ui-autocomplete-input" onfocus="this.value='';" autocomplete="off"/>

1 个答案:

答案 0 :(得分:0)

在阅读完代码后,这是建议而不是答案:

  1. 将第一个值放在框中会触发逻辑问题,因为它会更改输入框值,因此,自动完成列表也会被更改。

  2. 要解决此问题,请使用jquery-ui自动完成:自动对焦。

  3. 要将自动对焦置于原位,请在第422行之后插入js:

    autoFocus: true,
    

    阅读:http://api.jqueryui.com/autocomplete/#option-autoFocus