javascript - jquery 替代更改或 keyup

标签 javascript jquery

我有一个表单,用户必须在其中签名一堆不同的部分。

<script>
  $.function(){
    $('.initialMe').change(function(){
      var id = $(this).attr('id');
      alert(id);
    }); 
  });
</script>

<?php
  echo "<div class='signature'>Initial Here:<input type='text' class='initialMe' id='sign[service1]' name='sign[service1]' size='4'></div>";
  echo "<div class='signature'>Initial Here:<input type='text' class='initialMe' id='sign[service2]' name='sign[service2]' size='4'></div>";
?>

我想在文本框初始化完成后触发一个操作。我不想使用更改,因为他们必须在某个地方单击才能触发事件。我不想使用 keyup,因为事件将在首字母缩写的第一个字母后触发。我不知道用户是否会使用 2 个字母或 3 个字母作为缩写。这不是可提交的表格。将其视为一份法律文档,用户必须在页面的不同部分上签名。我有什么选择?

最佳答案

您可以结合使用keyupsetTimeout。我想说的是,将其绑定(bind)到 keyup 中,并给用户一些时间,让用户感觉它已经完成,然后检查。

$(function () {
  var tmr = 0;
  $("input").keyup(function () {
    clearTimeout(tmr);
    tmr = setTimeout(function () {
      alert("Checking...");
    }, 1000);
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input />

这样,每次都会检查,但会给出一些时间。当用户在一秒钟内再次键入时,它会清除之前的计时器,因此不会进行检查。

关于javascript - jquery 替代更改或 keyup,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34525240/

相关文章:

javascript - jquery-如何在输入 2 个数字后自动插入冒号

javascript - 在 jQuery 中选择 parent 的下一个 sibling 的 child

javascript - 单击 md-select 会在我的 <body> 中创建不必要的 "overflow-y: scroll;"

带有文字和单引号的 JavaScript 正则表达式

jquery - 无法使用 loadonce 刷新 jqgrid : true

javascript - JavaScript 中的日期间隔计算

javascript - 获取图像尺寸(上传前)

jquery - 在现有表中插入行

javascript - jQuery :empty not working with input

php - 将 jQuery.ajax 数据同时发送到表单提交