当用户键入#pgSearch
以过滤列表时,如果不匹配,则会显示.noresults
。
另外,当没有匹配项时,表格(#RequestRecipe
)也应该可见。但是不会立即出现.noresults
的情况。我需要按任何其他键才能触发它。反之亦然:当我删除字符直到noresults
消失并显示匹配项时,表格仍然可见,直到我按下任何额外的键为止。
所以我的想法是触发按键。但这似乎不起作用。
$(function(){
$('#pgSearch').keyup(function() {
$('#RequestRecipe #recipe').val($(this).val()); // copy #pgSearch to #recipe
$(this).trigger(jQuery.Event('keypress', {keyCode: 65})); // 65 is for testing. I think 16 (shift) or 29 (ArrowRight) is suitable
if($('.noresults').is(':visible')){
$('#RequestRecipe').slideDown('slow');
} else {
$('#RequestRecipe').slideUp('slow');
}
});
});
有什么建议吗?
编辑:我已经上传了我网站的半成品,您可以在此查看发生的情况:http://drinksta.thomaskile.me/
这是在索引页面上进行的搜索。
搜寻星标时,该列表使用quicksearch
-插件过滤。
如果没有匹配项,则.noresult
行将变为可见(设置为display: table-row;
。
发生这种情况时,您需要按一个额外的键来触发#RequestRecipe
上的显示/隐藏。
示例:
您键入“ abc”,将显示.noresult
,但不显示该形式。然后,您必须继续写,或者只按任何给定的键,然后它就会显示...