jQuery UI自动完成显示在页面底部

托马斯·威廉姆斯

我在使用jQuery ui自动完成功能时遇到了一个奇怪的问题,直到我不得不打印页面之前,我才注意到它。

每当我使用jQuery ui autocomplete时,它都会将其放在我正在使用的输入中,这是应该执行的操作,但是由于某种原因,它也会将其放在页面主体下。您看不到它,直到您去打印预览,然后它会显示出来。这很烦人,因为我需要能够在不显示页面的情况下打印页面。

现在,我知道它不是我的html缺少div或其他任何东西,因为它在每个页面上都执行,并且页面的格式完全不同。

我正在使用jquery 3.0.0和jquery ui v1.12.0

我的输入在大多数页面上都很正常,例如

<input type="text" id="searchcash" placeholder="Search by Reference or Reason" size="50" Value="">

我的jQuery代码也很标准

$("#searchcash").autocomplete({
    source: "ajax/cash.php",
    minLength: 2,//search after two characters
        select: function(event,ui){
            $('#line_id').val(ui.item.id);  
        },
        change: function (event, ui) {
            if (!ui.item) {
                $(this).val('');
            }
        }

我想知道是否有人遇到过这个问题,并且能够解决它。我想知道是否改用更新的jquery ui可以解决问题,但是我想我先问一下。

托马斯·威廉姆斯

罗里(Rory)让我提出了正确的想法,但这是在页面底部隐藏自动完成功能的实际代码。

我将其放置在我的print.css覆盖中,它阻止了将自动完成ui放置在页面底部。

.ui-helper-hidden-accessible{
    display:none !important;
}

如果有更好的方法可以解决这个问题,我将非常感兴趣。我不知道为什么必须将自动完成功能放在最底层,但这可以在短期内解决我的问题,但是肯定应该有一个更好的方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章