当前位置: 首页 > 知识库问答 >
问题:

当用户选择自动完成值时是否有事件触发?

邹誉
2023-03-14

如果我有一个带有自动完成字段的表单:

<form>
    <label>First name: <input type=text autocomplete="given-name"></label>
</form>

当用户从下拉菜单中选择自动完成值时(但在模糊事件之前)是否有事件触发?

共有1个答案

明财
2023-03-14

您可以尝试使用window.getComputedStyle(elem).getPropertyValue(“background-color”)获取背景色,尽管这只在Chrome中起作用(据我所知,它是唯一一个在自动完成时更改输入背景色的浏览器)。

null

$(document).ready(function() {
  function getBgrColor(elem) {
    return window.getComputedStyle(elem).getPropertyValue("background-color");
  }
  var initial = getBgrColor($('input')[0]);
  $('input').on('blur input', function() {
    var bgr = getBgrColor($(this)[0]);
    if (bgr != initial) {
      console.log("Autofilled");
    }
  });
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
  Select an autocomplete option, then click outside the input
  <br><br>
  <label>First name: <input type=text name="name"
            autocomplete="given-name"></label>
</form>
 类似资料:
  • 我有一个很简单的表格。当用户在输入字段中键入时,我想更新他们在页面上其他地方键入的内容。一切正常。我已将更新绑定到、和事件。 唯一的问题是,如果您从浏览器的自动完成框中选择一个输入,它不会更新。当您从“自动完成”中选择时,是否会触发任何事件(显然既不是也不是)。注意,如果您从“自动完成”框中选择“模糊输入”字段,将触发更新。我希望它能在自动完成时被触发。 请参见:http://jsfidle.ne

  • 问题内容: 我有一个非常简单的表格。当用户在输入字段中键入内容时,我想更新他们在页面上其他位置键入的内容。这一切都很好。我已经绑定的更新的,和事件。 唯一的问题是,如果您从浏览器的自动完成框中选择一个输入,则该输入不会更新。从自动完成功能中进行选择时,是否会触发任何事件(显然既不是也不是)。请注意,如果您从“自动完成”框中选择并 模糊 了输入字段,则将触发更新。我希望自动完成会立即触发它。 HTM

  • 我使用Primeface 3.4.2自动完成。 在ManagedBean中,当我在自动完成中键入字符时选择一行时,我无法在方法{中获取值 这可能是什么原因?理想情况下,当我从自动完成值中选择一行时,我希望填充或填充jsf页面中的其他列。 自动完成的JSF代码 ManagedBean方法

  • 我的JavaFx FXML应用程序有问题。 当我在表单上选中复选框时,我想根据单击的复选框执行一个方法。是否有任何方法可以将复选框的名称传递给该方法,以便对其执行一些有条件的工作? 我有两个复选框,只能选择一个。当我单击其中一个时,应取消选择另一个,反之亦然。显然,下面的代码将无法工作,因此我希望传递被单击对象的名称。 任何帮助都将不胜感激,非常感谢。

  • 用户可以从datalist或can类型中选择一个项目,输入它自己的值。我通过JSON调用PHP脚本连接到数据库,以填充表单其余部分的其他信息。我希望当用户在列表输入中键入名称时(因此当内容模糊时),或者当用户单击DataList中的某个选项时,这会触发。 使用当输入失去焦点时会触发该函数,但当从数据列表中选择一项时,它也会等待“直到输入失去焦点,我希望事件立即触发” 使用单击datalist中的一

  • 问题内容: 在css3动画的情况下,有什么方法可以实现回调函数?如果使用Javascript动画,则可能会在CSS3中找到实现它的方法,但找不到任何方法。 我可以看到的一种方法是在动画持续时间之后执行回调,但是并不能确保始终在动画结束后立即调用它。这将取决于浏览器UI队列。我想要一个更强大的方法。有什么线索吗? 问题答案: 就在这里。回调是一个事件,因此您必须添加事件侦听器才能捕获它。这是jQue