我想用Wordpress和jQuery驗證插件做一些表單驗證。我的js代碼是:WordPress的WordPress管理員阿賈克斯 - 有時工作,有時不
<script type="text/javascript">
var ajaxurl = "<?php echo admin_url('admin-ajax.php'); ?>";
// submit reg-form
jQuery(document).ready(function ($) {
$.ajaxSetup({
cache: false
});
$("#username").change(function(){
$("#username").removeData("previousValue");
});
$("#moto_register").validate({
ignore: "",
rules: {
username: {
remote: {
url: ajaxurl,
type: "post",
data: {
username: function() {
return $("#username").val();
},
action: 'moto_validate_username'
}
}
},
},
submitHandler: function(form) {
var sData = $(form).serialize();
$.ajax({
url: ajaxurl,
async: false,
type: 'POST',
data: sData,
success: function (data) {
if (console.log) console.log(data);
location.href = "http://test.net/?page_id=30 "
}
});
}
});
IM的WordPress插件我有以下代碼:
function moto_validate_username() {
$user_id = username_exists($_POST['username']);
if (!$user_id) echo 'true';
else echo 'false';
exit();
}
add_action('wp_ajax_nopriv_moto_validate_username', 'moto_validate_username');
add_action('wp_ajax_moto_validate_username', 'moto_validate_username');
有時這只是工作的,有時沒有。 AJAX似乎被解僱了,但沒有迴應,所以沒有驗證。任何人有一個想法爲什麼?