Tôi đang làm việc trên một dự án có hộp tìm kiếm tự động hoàn tất. Bây giờ tôi có vấn đề mà tôi muốn chuyển giá trị từ các autocompleteresults được tìm thấy vào hộp nhập liệu, nhưng đồng thời, tôi muốn autocompletebox ẩn khi inputfield không tập trung nhiều hơn.jQuery .focusout/.click xung đột
Bây giờ tôi có xung đột xảy ra với cả hai người kể từ khi nhấp vào autocompletebox được coi là tập trung và ẩn hộp ngay cả trước khi nó có thể chuyển giá trị. Bất kỳ con trỏ hoặc cách giải quyết nào cho loại vấn đề này? Đây là một jsfiddle để làm cho nó rõ ràng hơn cho bạn.
Hoặc đây
CSS:
#a_c {display:none;}
JS:
$('#search_field').focusout(function() {
$('#a_c').hide(); // IF I DELETE THIS IT WORKS
});
$('#search_field').focusin(function() {
$('#a_c').show();
});
$('#a_c a').click(function() {
$('#search_field').val('');
var value = $(this).text();
var input = $('#search_field');
input.val(input.val() + value);
$('#a_c').hide();
return false;
});
HTML:
<input autocomplete="off" onkeyup="searchFor(this.value);" name="search" id="search_field" class="bold" type="text" placeholder="Search...">
<div id="a_c"><a href="">hello world</a></div>
Rất hữu ích. Cảm ơn đã trả lời nhanh chóng! – Johnny000
tôi đã có một vấn đề tương tự như op, và tôi quyết định sử dụng sửa chữa bẩn này như là một giải pháp (cuối cùng và im trên một thời hạn phải sửa chữa này càng sớm càng tốt).Điều này đặt các sự kiện trong điều kiện chủng tộc và thực hành rất xấu của nó. tôi sẽ sử dụng điều này, cảm ơn câu trả lời này, nhưng sẽ downvote. chờ đợi một câu trả lời tốt hơn. – Sharky