簡體   English   中英

如何在隱藏的輸入字段(type =“ text”)上使用jQuery.autocomplete?

[英]How to use jQuery.autocomplete on a hidden input field (type=“text”)?

我試圖在隱藏的div內的文本字段上使用jQuery的自動完成功能。 盡管輸入字段獲得了ui-autocomplete-input類,但它似乎不起作用。 就像沒有事件綁定到我的輸入上一樣。

為了清楚起見,代碼如下所示:

<a href="#overlay" class="open-the-overlay-that-has-the-id-like-this-href-attribute">OPEN</a>

<div id="overlay" style="display:none">
    <form action="/action" method="post">
        <input type="text" id="my-unique-id" />
        <input type="submit" />
    </form>
</div>

<script type="text/javascript">
$(document).ready(function(){

    $("#my-unique-id").autocomplete({
        source: "search.php",
        minLength: 2
    });

});
</script>

此后,#my-unique-id獲得ui-autocomplete-input類,但沒有綁定任何事件。 有任何想法嗎?

這是服務器端腳本,但是沒有問題,因為在另一個字段上它可以正常工作:

(CakePHP)

function getCity() {

    $this->layout = FALSE;
    $this->autoRender = FALSE;
    Configure::write("debug",0);

    if(isset($_GET["term"]) && !empty($_GET["term"])) {
        AppModel::unbind($this->City);
        preg_match_all("/(\w+)/",urldecode($_GET["term"]), $term);
        $or = array();
        foreach ($term[0] as $t) {
            if(strtolower($t) != "jud")
            $or[] = "City.name LIKE '%$t%'"; // OR City.county LIKE '%$t%'
        }
        $or = implode(" OR ", $or);
        $cities = $this->City->find("all", array("limit"=>30, "fields"=>array("City.id", "City.name", "City.county"),"conditions"=>array($or)));
        $returnArray = array();
        $k = 0;
        foreach($cities as $c) {
            $returnArray[$k]['id'] = $c["City"]["id"];
            $returnArray[$k]['label'] = $c["City"]["name"].", jud. ".$c["City"]["county"];
            $returnArray[$k]['value'] = $c["City"]["name"].", jud. ".$c["City"]["county"];
            $k++;
        }
        return json_encode($returnArray);
    }
}

您的代碼是正確的,可能出問題的是您的服務器端腳本未返回數據,因此看起來什么也沒有發生。 您能否發布服務器端腳本?

您也可以嘗試使用本地數據源:

    var availableTags = [
        "ActionScript",
        "AppleScript",
        "Asp",
        "BASIC",
        "C",
        "C++",
        "Clojure",
        "COBOL",
        "ColdFusion",
        "Erlang",
        "Fortran",
        "Groovy",
        "Haskell",
        "Java",
        "JavaScript",
        "Lisp",
        "Perl",
        "PHP",
        "Python",
        "Ruby",
        "Scala",
        "Scheme"
    ];

 $("#my-unique-id").autocomplete({
        source: availableTags ,
        minLength: 2
    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM