LiveValidation を使用してフォームを検証しています。livevalidation を使用して ajax 呼び出しでユーザー名を検証しようとしています。ユーザー名が使用可能かどうかを表示できるように、戻り値が true または false の場合、戻り値を取得する際に問題がありますが、この場合は常にユーザー名が使用できないことを返します。
HTML:
<input type="text" id="username" name="username" />
JS:
var username = new LiveValidation('username');
username.add( Validate.Presence );
username.add( Validate.Length, { minimum: 4, maximum: 10 } );
username.add( Validate.Custom, { against: function() { return check_username_availability() }, args:'Username Available' , failureMessage: 'Username is Not Available' } );
$.post(base_url+'cms-profile/profile_ajax/valid_username/',{username : $("#username").val()},function(data){
if( data.success == 'no' )
{
return false;
}
if( data.success == 'yes' )
{
return true;
}
});
PHP:
$check_username = 'some query here';
if($check_username == true){
$output = '{ "success": "no" }';
}else{
$output = '{ "success": "yes" }';
}
$output = str_replace("\r", "", $output);
$output = str_replace("\n", "", $output);
echo $output;