在StackOverflow上问了这个问题,他们把我带到那边。。。你在这里住的好地方=)
我一直在开发一个非常简单的WordPress插件,并希望对页面上的某些字段进行实时验证,这正是我遇到的问题。我一直在到处寻找一些有用的东西,但我就是不能让它发挥作用。
我一直在努力让ajax正常工作,我知道我遗漏了一些明显的东西,我就是想不出来。
主要功能文件包括注册我的js文件。
function on_screen_validation() {
wp_enqueue_script( "field_validation", path_join(WP_PLUGIN_URL, basename( dirname( __FILE__ ) )."/field-validation.js"), array( \'jquery\' ) );
}
add_action( \'admin_print_scripts\', \'on_screen_validation\' );
js运行此代码来捕获onblur命令并将值传递给php验证文件。jQuery(document).ready(function() {
//run field validation on username on blur
jQuery(\'.valusername\').blur(function() {
var usernameID = jQuery(this).attr(\'id\');
var usernameVal = jQuery(\'#\'+usernameID).val();
var thisFunction = \'validateUserName\';
jQuery.post("mywebaddress...validation.php",{Function: thisFunction, thevars: usernameVal}, function(data) {
alert(data); //would update validation message here
});
});
});
以及验证。php脚本如下所示:if(isset($_POST[\'Function\'])){
call_user_func($_POST[\'Function\'], $_POST[\'thevars\']);
}
function validateUserName($username){
if ( username_exists($username) ) {
echo $username.\' does exist\';
} else {
echo $username.\' doesnt exist\';
}
}
显然,我现在只是使用警报来确保数据被正确检查。如果我取出WordPress username\\u exists函数,只回显一个字符串,它就可以正常工作。但如果username\\u存在,则会创建一个500内部服务器错误。我需要知道如何获得外部验证。php文件来识别WordPress函数(我想),到目前为止我还没有发现任何有用的东西。
感谢阅读。。。对不起,我解释得太长了,我只是想确保上下文都在那里,这样才有意义(我希望!)!
干杯Matt