2013-07-19 2 views
0

Я пытаюсь выяснить, как я мог бы создать вспомогательное поле ввода на основе поискового запроса. Самый большой пример этого - это раскрывающийся список, когда вы начинаете писать что-то в барах поиска Google или Facebook, помогая пользователю вводить данные.cakePHP Assisted Form Input

Мой клиент просил это как функцию, и я не знаю, как реализовать его в классе FormHelper. Есть идеи? Возможно, где искать ответ?

+0

Можете ли вы опубликовать несколько примеров кода, который вы написали, пытаясь реализовать его самостоятельно? – biphobe

+2

звучит так, как вы хотите [jquery ui autocomplete] (http://jqueryui.com/autocomplete/#remote) или тому подобное. – AD7six

+0

На самом деле это не вопрос к cakephp. Ваша функция - требование стороны клиента, которое определенно будет обработано javascript. – user221931

ответ

0

Что вам нужно Jquery UI в автозаполнения: http://jqueryui.com/autocomplete/

Это передний конец, что сделано с JavaScript. Единственное, что вам нужно для работы с back-end для, вероятно, для указания возможных параметров, которые пользователь имеет в раскрывающемся списке.

Один из способов сделать это - просто иметь массив для заполнения параметра availableTags. Например, статическое автозаполнение может иметь следующий (взятые из примера на странице связаны выше):

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

Вы можете хранить тег в массиве с помощью CakePHP, и сделать что-то подобное в вашем Виде:

var availableTags = [ 
    <?php foreach ($tags_array as $tag) echo '"' . $tag . '",'; ?> 
];