我正在尝试使用wordpress中的jquery Validate插件验证重复的电子邮件。但由于某种原因,该函数始终返回0。
jQuery代码:
email: {
required: true,
email: true,
"remote":
{
url: CartAjax.ajaxurl,
type: "post",
data:
{
email: function()
{
return $('#frmorder :input[name="email"]').val();
},
action: 'duplicate_email_check'
}
}
},
在我的主题functions.php
中add_action('admin_post_duplicate_email_check', 'duplicate_email_check');
add_action('admin_post_nopriv_duplicate_email_check', 'duplicate_email_check');
function duplicate_email_check()
{
echo "true";
die();
}
如果为true,它应该返回1而不是0,但它总是返回0。
非常感谢任何帮助。
答案 0 :(得分:1)
您需要在操作前添加wp_ajax或wp_ajax_nopriv(对于已注销的用户)。
add_action('wp_ajax_admin_post_duplicate_email_check', 'wp_apax_duplicate_email_check');
add_action('wp_ajax_admin_post_nopriv_duplicate_email_check', 'duplicate_email_check');
add_action('wp_ajax_nopriv_admin_post_duplicate_email_check', 'wp_apax_duplicate_email_check');
add_action('wp_ajax_nopriv_admin_post_nopriv_duplicate_email_check', 'duplicate_email_check');