如果电子邮件已存在或为空,请检查文本输入
Posted
技术标签:
【中文标题】如果电子邮件已存在或为空,请检查文本输入【英文标题】:Check text input if email already exist or empty 【发布时间】:2020-12-30 18:37:48 【问题描述】:我想获取 txtEmail 输入的值,并在文本输入失焦后检查它是否已被使用。假设只使用一个电子邮件地址,即 john.doe@example.com。如果电子邮件已经存在,它将返回一条错误消息,表明它已经存在。如果文本字段为空,它也会返回错误消息
“Checkemail.php”
<?php
header('Access-Control-Allow-Origin: *');
if ($_REQUEST['email'] == 'john.doe@example.com')
echo -1;
else
echo 1;
?>
Scripts.js
document.getElementById("txtEmail").addEventListener("focusout", outOfFocus);
function outOfFocus()
var txtEmail = $("#txtEmail").val();
console.log(txtEmail);
$.ajax(
type:"POST",
url:"checkemail.php?email=<email>",
data: txtEmail,
success: function(data)
console.log("Success!");
,
error: function()
document.getElementById("#emailError").innerhtml = "Email address already used!"
)
电子邮件.html
<label for="lblEmail">Email : </label>
<input type="email" id="txtEmail">
<label for="emailError" id="emailError"></label><br/>
【问题讨论】:
【参考方案1】:“blur”是您想要的事件 - 据我所知,没有“focusout”,除非您使用的是具有该功能的库
另外,发送 POST 请求时,您不需要查询字符串(即该行应该只是 url:"checkemail.php"
,因为数据只会在 POST 正文中发送)
您还应该使用 $_POST 访问变量服务器端,而不是 $_REQUEST
同样,如果您通过 POST 变量名称引用事物,您可能必须发送一个键值对象,而不仅仅是字符串。只需从 jQuery 文档中复制一个示例。您也可以使用 $.post 方法,这是手动将 $.ajax 方法设置为 post 的简写
如果你完成了所有这些步骤,那应该可以帮助你完成大部分工作
【讨论】:
以上是关于如果电子邮件已存在或为空,请检查文本输入的主要内容,如果未能解决你的问题,请参考以下文章