清除预输入字段

Clear typeahead field

如何清除 focusout 事件中的预输入字段?

以下 jQuery 代码似乎在预输入字段中不起作用:

$( "#field" ).focusout(function() {
    $(this).val("");
});

试试这个,例子在 fiddle

$('.typeahead').typeahead().bind('typeahead:close', function () {
    $('.typeahead').typeahead('val', '');
});

已接受的答案现已过时。查看latest Typeahead documentation可以看出捕获"close"事件和设置输入值是不同的。这是一个等效的更新答案:

$('.typeahead').typeahead().bind('typeahead:close', function() {
    $('.typeahead').typeahead('val', '');
});

感谢所有回答,但 close 事件对我不起作用,可能是我的设置或某些东西已被弃用。所以我写了这段代码并且运行良好。

$('#typeahead-id').typeahead().bind('typeahead:selected', function() {
    $('#typeahead-id').typeahead('val', '')
});