我一直在开发一个注册表单,而且我一直在缓慢但肯定地学习一些 javascript 和 jquery,以进一步支持我对这一切的了解。但是我遇到了一个问题,问题是我无法从 AJAX 请求中获得响应。
我的 AJAX 请求在一个单独的函数中,我有多种用途。我已将 alert();'s 放入代码中以进行调试。
function validate_input ( input, type ) {
$.ajax({
type:'post',
url: 'ajax_request.php',
data: "type=" + type + "&input=" + input,
success: function( response ) {
if( response == "true" || response == "false" ) {
alert( "working" );
console.log(response);
return response;
} else {
alert( "AJAX/jQuery Error" );
alert( "Reponse !== true or false" );
}
}
});
}
我可以确认 ajax_request.php 文件正确地回显真或假,但是,对于那些感兴趣的人来说,这里是编码。
if (!defined('BASEPATH') &&
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest')
exit('Direct Access to this file has been disabled.');
include('core/db.php');
$validateType = intval( $_POST['type'] );
$input = escape_string( $_POST['input'] );
if( $validateType == 1 ) // validate username
{
echo ( user_exists( $input ) ? "true" : "false" );
} else if( $validateType == 2 ) // validate email
{
echo "true"; // not coded yet
}
最后,我在必要时调用该函数(使用 .blur()),您可以在下面看到;
var username_value = "Jake"; // for debugging purposes, var definitely contains something
validate_input( username_value, 1 );
alert( validate_input( username_value, 1 ) ); alerts "undefined"
我只是想知道是否有人可以看到导致此问题的代码的任何问题,请不要建议我使用验证器插件,这不是问题的答案。
谢谢,