1 ajax_example_autocomplete.inc | ajax_example_unique_node_autocomplete_callback($string = "") |
Autocomplete callback for nodes by title.
Searches for a node by title, but then identifies it by nid, so the actual returned value can be used later by the form.
The returned $matches array has
- key: The title, with the identifying nid in brackets, like "Some node title [3325]"
- value: the title which will is displayed in the autocomplete pull-down.
Note that we must use a key style that can be parsed successfully and unambiguously. For example, if we might have node titles that could have [3325] in them, then we'd have to use a more restrictive token.
Parameters
string $string: The string that will be searched.
File
- modules/
examples/ ajax_example/ ajax_example_autocomplete.inc, line 219 - ajax_example_autocomplete.inc
Code
function ajax_example_unique_node_autocomplete_callback($string = "") {
$matches = array();
if ($string) {
$result = db_select('node')
->fields('node', array('nid', 'title'))
->condition('title', db_like($string) . '%', 'LIKE')
->range(0, 10)
->execute();
foreach ($result as $node) {
$matches[$node->title . " [$node->nid]"] = check_plain($node->title);
}
}
backdrop_json_output($matches);
}