【发布时间】:2019-08-25 23:32:35
【问题描述】:
我想提交表单数据到数据库,用户在表单中输入数据后 2 秒
我正在使用 ajax 函数来完成此操作。但是按一个键时会提交表单
$('#eid').bind('input propertychange', function() {
$.ajax({
method: "POST",
url: "intime2.php",
data: { content: $("#eid").val() }
}).done(function( msg ) {
alert( "Data Saved: " + msg );
});
});
当我在表单中输入员工 ID=12 时。我希望结果以 12 的形式存储在数据库中,但存储的结果是 1。在按 2 之前提交数据。我还希望每次连续提交时自动刷新表单。
我的目标:员工应该输入他们的员工ID(我要从读卡器中取出,但现在我喜欢使用超时功能)在输入表单后应该自动提交而无需他们按下提交按钮然后表单应该刷新,下一个员工应该输入他的员工 ID
【问题讨论】:
-
出于这个原因,自动提交总是一个坏主意。你在提交之前延迟了多长时间?如果有人正在输入一个值并且中途停下来检查它并更正它会发生什么?那么您提交的值无效。如果有人快速打字而您延迟了 5 秒会发生什么?你让他们毫无理由地等待,这真的很烦人。我建议您按照标准做法使用按钮。
-
我正在学习中。我喜欢在这段代码中添加超时功能。因此,在输入所需数据后,必须提交表单。谢谢
-
在这种情况下研究
setTimeout()。此外,bind()已弃用,请改用on(),并确保您使用的是最新版本的 jQuery。 -
你能解释一下如何在代码中使用 on()
-
查看文档:api.jquery.com/on
标签: javascript php jquery ajax