使用Ajax检查电子邮件地址是否有效?我目前正在使用sfValidatortEmail
窗口小部件,这只显示提交表单的错误消息。
由于
答案 0 :(得分:1)
您需要添加一些Javascript / Jquery来触发Ajax请求来检查电子邮件,可能链接到用户点击电子邮件输入框时(模糊功能)。这将与您的表单类别分开(假设表单也有其他元素),但如果您愿意,可以使用相同的操作来处理请求:
if ($request->isXmlHttpRequest()) {
// handle ajax check
} else {
// handle normal post
}
答案 1 :(得分:1)
我假设您知道如何编写ajax请求。在动作中你会有类似的东西
if ($request->isXmlHttpRequest()) {
// handle ajax check
try{
$validator = new sfValidatorEmail();
$validator->clean($request->getParameter('email'));
// good to go
} catch(sfValidatorError $e){
// invalid email
$this->getResponse()->setStatusCode(400);
}
} else {
// handle normal post
}