我有此自动完成搜索提交表单。但这不像我预期的那样。
当我在列表上上下移动并按Enter键时,表单提交的内容不是在列表中输入的术语,而是在文本字段中键入的数据。
我希望填写文本框并在人们按下回车键时自动提交(如果他从下拉列表中选择一个或不选择任何东西)。
我也试图加入'autocompleteselect'事件,但它似乎不起作用。也许与我使用'autocomplete_path'连接'autocomplete'有关。
JS:
$(document).on("autocompleteselect", "#edit-keyword", function (event, ui) {
var data = ui.item.value;
console.log(data);
});
Drupal:
$form['edit-keyword'] = array(
'#id' => 'edit-keyword',
'#prefix' => '<div id="edit-keyword-wrapper" class="views-exposed-widget">',
'#suffix' => '</div>',
'#type' => 'textfield',
'#default_value' => '',
'#attributes' => array('id' => 'edit-keyword', 'class' => ['edit-keyword'], 'placeholder' => t("Start typing to search..")),
'#attached' => array(
'js' => array(
drupal_get_path('module', 'np_global_search') . '/np_global_search.js'
),
),
'#autocomplete_path' => 'np-gs-search/autocomplete',
);