使用 ajax 和 PHP 检查现有邮件
Check existing mail with ajax and PHP
在我编写邮件时(在我单击提交 buttom 之前),有什么方法可以检查邮件(在注册表中)是否存在于我的数据库中。
这是我的javascript函数,当我单击提交按钮时,它运行良好:
<script type="text/javascript">
$(document).ready(function(){ //newly added
$('#_submit').click(function() {alert('in');
var emailVal = $('#mail').val(); // assuming this is a input text field
$.post('checkemail.php', {'mail' : emailVal}, function(data) {
if(data=='exist') return false;
else $('#form1').submit();
});
});
});
</script>
但我想在提交之前验证邮件(无需单击任何按钮)
我相信#_submit
是一个提交按钮。在这种情况下,您的<from>
将在不等待 ajax 调用完成的情况下提交,因为这是一个异步任务。
为了解决此问题,您应该默认阻止<form>
提交,并在 ajax 调用完成后,根据响应决定是否提交表单。
$(document).ready(function() { //newly added
$('#_submit').click(function(e) {
e.preventDefault(); // prevent default submission
alert('in, submission prevented - waiting for ajax response');
var emailVal = $('#mail').val(); // assuming this is a input text field
$.post('checkemail.php', {
'mail': emailVal
}, function(data) {
if (data == 'exist')
return false;
else
$('#form1').submit();
});
});
});
或者,您可以简单地使用type="button"
按钮,这样它就不会触发<form>
提交。
类似的东西
$.ajax(url).done(function(response) {
if (response === true) {
$(form).submit();
} else {
console.log("not allowed");
});
相关文章:
- JavaScript代码未正确检查ajax请求
- 如何使用jQuery可编辑插件检查ajax是否成功完成
- 正在检查ajax响应中的错误数据
- 如果我返回表,检查 Ajax 调用是否为 200 OK的最佳方法是什么
- 如何根据字符串检查ajax响应
- 当类型设置为JSON时,如何检查AJAX响应字符串
- 如何检查AJAX请求是否已完成
- 检查 ajax 请求是否在大多数情况下失败
- 检查 Ajax 请求
- 如何检查ajax或jquery中是否存在url或网页
- 如何检查Ajax返回的JSON的正确性
- 有没有任何选项可以让我们检查AJAX请求的来源
- 检查ajax调用的html响应中是否存在类或id
- 强制Chrome检查$.Ajax调用结束
- 检查ajax中的成功和错误
- 检查ajax页面更新与javascript上的特定url (chrome扩展)
- 如何检查ajax .load调用是否已加载
- 日期选择器javascript和电子邮件检查ajax java脚本错误
- 检查.ajax请求后加载的所有图像
- 检查ajax调用是否完成